继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

初识this-By@小丸子爱吃菜

微漾无痕
关注TA
已关注
手记 1
粉丝 3
获赞 1

this永远指向调用它的对象。

1、如果一个函数中有this,但是它没有被上一级的对象所调用,那么this指向的就是window。

    fn:function(){
        console.log(this.name);  } 
}
obj.fn();

打印出的结果就是window,因为它最外层没有被调用,按照规范写的话是window.func(),所以指向window。

2、如果一个函数中有this,这个函数有被上一级的对象所调用,那么this指向的就是上一级的对象。

var obj = {
    name:"imooc",
    fn:function(){
        console.log(this.name);  } //imcco   
}
obj.fn();

fn被obj所调用,this指向的就是obj,那么this.name就是imooc,如果是这样写呢?

var name="imooc";
var obj = {

    fn:function(){
        console.log(this.name);  } 
}
obj.fn();

同样的,fn被obj所调用,只想obj,但是obj中没有name属性,所以为undefined。

打开App,阅读手记
1人推荐
发表评论
随时随地看视频慕课网APP