课程咨询 :18487146383

  • JS中this的使用技巧:作为对象的方法调用

    发布:长沙Java培训      来源:codeceo.com      时间:2016-08-30

  • JS中的this有很多技巧,熟练运用这些技巧就可以帮助我们节省不少时间。接下来跟着达内长沙java培训继续学习吧,这篇文章讲的是this作为对象的方法调用。

    当一个函数被当作一个对象的方法调用的时候:

    var obj = {

    name: 'qiutc',

    foo: function() {

    console.log(this.name);

    }

    }

    obj.foo();

    // 'qiutc'

    这时候,this指向当前的这个对象;

    当然,我们还可以这么做:

    function test() {

    console.log(this.name);

    }

    var obj = {

    name: 'qiutc',

    foo: test

    }

    obj.foo();

    // 'qiutc'

    同样不变,因为在js中一切都是对象,函数也是一个对象,对于test,它只是一个函数名,函数的引用,它指向这个函数,当foo = test,foo同样也指向了这个函数。

    如果把对象的方法赋值给一个变量,然后直接调用这个变量呢:

    var obj = {

    name: 'qiutc',

    foo: function() {

    console.log(this);

    }

    }

    var test = obj.foo;

    test();

    // Window

    可以看到,这时候this执行了全局,当我们把test = obj.foo,test直接指向了一个函数的引用,这时候,其实和obj这个对象没有关系了,所以,它是被当作一个普通函数来直接调用,因此,this指向全局对象。

上一篇:JS中this的使用技巧:全局执行

下一篇:JS中this的使用技巧:箭头函数

最新开班日期  |  更多

Java--零基础全日制班

Java--零基础全日制班

开班日期:6月30日

Java--零基础业余班

Java--零基础业余班

开班日期:6月30日

Java--大数据全日制班

Java--大数据全日制班

开班日期:6月30日

Java--大数据业余制班

Java--大数据业余制班

开班日期:6月30日

  • 网址:http://cs.java.tedu.cn     地址:长沙市开福区芙蓉中路一段 476 号建鸿达现代城 9 楼
  • 课程培训电话:18487146383     全国服务监督电话:400-111-8989
  • 服务邮箱 tousu@tedu.cn
  • 2001-2016 达内时代科技集团有限公司 版权所有 京ICP证8000853号-56