当一个函数a内部调用一个外部的函数b时,这个函数中的this自动绑定到了所调用的函数b上。所以当我们用this调用函数a的属性时会出现问题。
解决方法:
解决方法:
<script>
var obj = {
value: 0,
dc: function (type){
this.value +=typeof(type)==='number'?type:1;
}
};
function add(a,b){
return a+b;
}
obj.db = function (){
var that = this;
alert(this.value);
var helper = function (){
that.value = add(that.value,that.value);
};
helper();
}
obj.dc(3);
obj.db();
document.writeln(myobject.value);
</script>