this的难控性
由于this表示的是当前实例。再加上JavaScript是可以传递方法的,那么就会出现在方法嵌套时,this难以控制的情况。 另外在JavaScript语言本身设计上的一些缺陷,会导制下面这种情况,this指向了window对象。
//一个计算方法,method是具体的计算方法
function calc(a,b,method){
//定义一个内部加班,当method == "+" 时使用
var add = function(a,d){
//此时的this 是window实例
return a + b;
}
if(method == "+"){
return add(a,b);
}
}