文档章节

JavaScript之 prototype、apply 的运用

GZhiDao
 GZhiDao
发布于 2016/06/29 10:23
字数 206
阅读 19
收藏 1
//输入字符串返回字符串
    function spacify(str){
        return str.split('').join('');
    }
    console.log(spacify('hello world'));
    // 'hello world'.spacify();
    //函数直接作用在一个字符串对象上(原型连)
    String.prototype.spacify2 = function(){
        return this.split('').join('');
    }
    console.log('hello boy'.spacify2())
    //函数声明和函数表达式的区别---待续

    //控制台输出方式
    function log(msg){
        console.log(msg);
    }
    log('hello boy2'.spacify2())
    //apply的运用  arguments是伪数组
    function log2(){
        console.log.apply(console,arguments);
    }
    //输出的字符串统一加上(app)这样的字符串类似于:'(app) hello world'
    function log3(){
        var args = Array.prototype.slice.call(arguments);
        args.unshift('(app)');
        console.log.apply(console,args);
    }
    log3('hello3')
    //this的理解
    var User = {
        conunt:1,
        getConunt:function(){
            return this.conunt;
        }
    }
    console.log(User.getConunt());//1
    var func = User.getConunt;
    console.log(func());//undefind 因为func的上下文是'window'
    //正确的是使用bind
    var func2 = User.getConunt.bind(User);
    console.log(func2())
    //兼容低浏览器
    Function.prototype.bind = Function.prototype.bind || function(context){
        var self =this;
        return function(){
            return.self.apply(context,arguments);
        }
    }
    

 

© 著作权归作者所有

共有 人打赏支持
GZhiDao
粉丝 6
博文 119
码字总数 89796
作品 0
广州
前端工程师
私信 提问
JavaScript继承详解(二)

文章截图 - 更好的排版 这一章我们将会重点介绍JavaScript中几个重要的属性(this、constructor、prototype), 这些属性对于我们理解如何实现JavaScript中的类和继承起着至关重要的作用。 ...

solu
2010/12/22
0
0
《你不知道的JavaScript》系列分享专栏

《你不知道的JavaScript》系列分享专栏 你不知道的JavaScript”系列就是要让不求甚解的JavaScript开发者迎难而上,深入语言内部,弄清楚JavaScript每一个零部件的用途 《你不知道的JavaScrip...

开元中国2015
12/01
0
0
5个典型的JavaScript面试题(上)

本文由伯乐在线 -XfLoops 翻译,黄利民 校稿。未经许可,禁止转载! 英文出处: Aurelio De Rosa。欢迎加入 翻译组。 IT 行业对JavaScript开发者有着很大的需求。如果你具备这种角色所需的知...

伯乐在线
2014/12/04
0
0
javascript面向对象中继承实现?

javascript面向对象中继承实现? 面向对象的基本特征有:封闭、继承、多态。 在JavaScript中实现继承的方法: 1. 原型链(prototype chaining) 2. call()/apply() 3. 混合方式(prototype和c...

lslaiwy
06/05
0
0
了解javascript编程中的Prototype(原型)

日期:2012-5-16 来源:GBin1.com 当你定义javascript方法的时候,会产生一些预定义的属性,其中一个比较让人迷惑的属性就是prototype。在本文中,我们将详细介绍什么是Prototype,并且为什么...

gbin1
2012/05/22
0
0

没有更多内容

加载失败,请刷新页面

加载更多

PHP生成CSV之内部换行

当我们使用PHP将采集到的文件内容保存到csv文件时,往往需要将采集内容进行二次过滤处理才能得到需要的内容。比如网页中的换行符,空格符等等。 对于空格等处理起来都比较简单,这里我们单独...

豆花饭烧土豆
56分钟前
1
0
使用 mjml 生成 thymeleaf 邮件框架模板

发邮件算是系统开发的一个基本需求了,不过搞邮件模板实在是件恶心事,估计搞过的同仁都有体会。 得支持多种客户端 支持响应式 疼彻心扉的 outlook 多数客户端只支持 inline 形式的 css 布局...

郁也风
今天
4
0
让哲学照亮我们的人生——读《医务工作者需要学点哲学》有感2600字

让哲学照亮我们的人生——读《医务工作者需要学点哲学》有感2600字: 作者:孙冬梅;以前读韩国前总统朴槿惠的著作《绝望锻炼了我》时,里面有一句话令我印象深刻,她说“在我最困难的时期,...

原创小博客
今天
3
0
JAVA-四元数类

public class Quaternion { private final double x0, x1, x2, x3; // 四元数构造函数 public Quaternion(double x0, double x1, double x2, double x3) { this.x0 = ......

Pulsar-V
今天
17
0
Xshell利用Xftp传输文件,使用pure-ftpd搭建ftp服务

Xftp传输文件 如果已经通过Xshell登录到服务器,此时可以使用快捷键ctrl+alt+f 打开Xftp并展示Xshell当前的目录,之后直接拖拽传输文件即可。 pure-ftpd搭建ftp服务 pure-ftpd要比vsftp简单,...

野雪球
今天
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部