function returnfunc (propertyName) {
return function (obj) {//-----这行定义并返回了一个闭包,也被称之为一个匿名函数
return obj[propertyName];
};
}
var savefunc = returnfunc("name"); //调用returnfunc()
var result = savefunc({name:"Picasso"});//调用savefunc()
alert(result); //返回字符串“Picasso”
这段代码看了很久了,但是完全一头雾水。为什么最后输出了Picasso
为什么可以把{name:"Picasso"}作为savefunc的参数呢,savefunc不是应该等于obj[propertyName]吗?
求大牛解答,js好复杂啊。
__
感谢大家的回答,非常感谢。不过只能采纳一个,抱歉了。
犯罪嫌疑人X
相关分类