闭包后的取值问题。。。

闭包很多基本情况都了解了,以为自己已经把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{}哪来的。。。


由于好心人提醒。我这问题其实不涉及闭包,把题目更正免得被误解。


慕桂英546537
浏览 607回答 1
1回答

MYYA

Demo.defaults 是一个对象不是字符串。var Demo = {       index: 0,       defaults: { width: "1200px",               height: "500px"},        init: function(){          return this.defaults      }   }   Demo.init()==Demo.defaults //true
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript