this使用

182 阅读1分钟

1:this在函数中直接使用:就是国家兜底,类似于类似于西方养老 ,没老板养我,国家就得养我,哼哼

2:函数作为对象的方法被调用(谁调用我,我指向谁)有点像,我帮你做事,你给我工资啦


var name = 222
var a = {
    name :111,
    say: function () {
        console.log(this.name);
    }
}
var fun = a.say
fun()//函数直接使用==fun.call(window)结果222
a.say()//a.say.call(a)结果111

var b = {
    name = 333,
    say: function (fun) {
        fun()//fun.call(window)222
    }
}
b.say(a.say)
b.say = a.say
b.say()//b.say.call(b)333

ps:this最经典的一点:你只需要记住判断this是全局还是局部。就ok了