闭包很多基本情况都了解了,以为自己已经把JS的一个难点搞懂了,结果看到网上这个demo又不是很懂了。。var Demo = {
index: 0,
defaults: { width: "1200px",
height: "500px"},
init: function(){
console.log(this.defaults);
}
}
Demo.init(); //Object {width: "1200px", height: "500px"}Demo.init();调用init属性的匿名函数,在控制台输出this.defaults,而this指向的就是Demo()不是吗,Demo中的defaults属性的值,为啥不是width: "1200px", height: "500px",那个object{}哪来的。。。由于好心人提醒。我这问题其实不涉及闭包,把题目更正免得被误解。
1 回答

MYYA
TA贡献1868条经验 获得超4个赞
Demo.defaults 是一个对象不是字符串。
var Demo = { index: 0, defaults: { width: "1200px", height: "500px"}, init: function(){ return this.defaults } } Demo.init()==Demo.defaults //true
添加回答
举报
0/150
提交
取消