函数调用模式
function add(a,b){
return a+b;
}
console.log(add(4,5))//9
当一个函数并非一个对象的属性时,那么它被当做一个函数来调用。以此模式来调用函数的时候,this绑定的是全局对象。这是语言设计的一个错误。因为this绑定了全局对象,我们不能共享该方法对对象的访问权。解决方案如下:
var myObject={
value:0,
increment:function(inc){
//这里的this绑定的myObject是对象