文档章节

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
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
JavaScript中__proto__与prototype的关系

JavaScript中proto与prototype的关系 这里讨论下对象的内部原型(proto)和构造器的原型(prototype)的关系。 一、所有构造器/函数的proto都指向Function.prototype,它是一个空函数(Empty f...

泡不烂的凉粉
2013/05/21
0
0

没有更多内容

加载失败,请刷新页面

加载更多

Sqoop 操作实例补充

导入指定字段和指定条件的行记录 # 指定导入的字段--columns <col,col,col…># 指定过滤条件--where <where clause># 设置切分的工作单元--split-by <column-name># 目标目录存在...

PeakFang-BOK
29分钟前
3
0
App store 侵权投诉

App Store Content Dispute 侵权投诉 https://www.apple.com/legal/internet-services/itunes/appstorenotices/#?lang=zh...

壹峰
32分钟前
1
0
教程:如何在window上安装Apache HTTP Server

Apache官网只提供 Apache HTTP Server 的源代码,不提供编译好的二进制文件。 不过我们还是可以从网络上找到其他人编译好的Apache HTTP Server。 首先,从 https://www.apachehaus.com/cgi-b...

Doxde
48分钟前
1
0
中国移动蔡谦:5G传输准备就绪

目前5G已成业界热议话题,在即将到来的万物互联时代,5G是非常关键的技术。且5G相比4G,业务场景多种多样,对5G承载网带来巨大挑战。5G传输,承载先行并不仅仅是一个口号。当前5G承载网的部署...

linux-tao
57分钟前
4
0
维护“修理权”,苹果使用专有软件工具来修复MacBook Pro和iMac Pro

根据上月发给苹果授权服务提供商的一份文件,苹果公司正在使用新的专有软件诊断工具来修复MacBook Pros和iMac Pros,如果不用专有软件工具来修复关键部件,将会导致“系统失效和修复不完整”...

linuxCool
今天
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部