JavaScript 指针设计错误

来源:互联网 发布:js获取body所有子元素 编辑:程序博客网 时间:2024/05/18 01:58

当函数调用如 var = add(1,2),此时函数的指针会指向全局函数

 

var add = function(a,b){
 return a + b;
};


var myObject = {
 value:3,
 getValue:function(){
  return this.value;
 }
};


myObject.double = function(){
 var that = this;
 var helper = function (){
  //add方法内地this指向window对象,应该算是javascript设计错误
  //所以这里用一个局部变量指向内部方法参数
  that.value = add(that.value,that.value);
 };
 helper();
};

myObject.double();
document.writeln(myObject.getValue());

 

原创粉丝点击