@Secretmm
2017-11-09T05:46:32.000000Z
字数 396
阅读 648
js专题
全局对象中的this指向它的自身;
eg:
'use strict'
this.a = 2; //相当于 var a = 2;
console.log(a); //2
- 如果函数被一个对象所拥有,那么在这个函数被调用的时候,它内部的this指向该对象
- 如果函数被独立调用,那么它内部的this指向undefined;[在非严格模式中,当this指向underfined时,会被自动指向全局对象]
eg:
function fn(b, c) {
console.log(this.a + b + c);
};
var obj = {
a: 20
};
fn.call(obj, 4, 5);
结果:
29
解释:
通过call,我们将fn内部的this绑定为obj
call与applay后面的参数,都是向将要执行的函数传递参数。其中call以一个一个的形式传递,apply以数组的形式传递