var people={
name:'huanqingdong',
age:24,
sex:'boy',
show:function (){
alert(this.name+this.age+this.sex);
}
}
var name=people.show;
name();
这段代码 居然是弹出function (){
alert(this.name+this.age+this.sex);
}
这段内容求解释 ,
我如何通过那么去执行show函数呢
------解决方案--------------------
- JScript code
//创建people对象 var people={ name:'huanqingdong',//设置name属性 age:24, //设置age属性 sex:'boy', //设置sex属性 //设置show方法(因为后面定义的是function) show:function (){ alert(this.name+this.age+this.sex); } } var name=people.show;name();//改为var name=people.show();name; 而你所说的怎么执行方法 应该这样: var name=people.show(); name;
------解决方案--------------------
- JScript code
var name=people.show; name();//执行后this作用于为window,并不是people,this.name就是var name声明的变量,为函数体 name.call(people)//更改函数作用于为people就对了