我很難理解JS中關閉和變量範圍的概念。具體而言,如何訪問類中深度嵌套的styleData
變量,然後如何訪問由該類創建的對象?JavaScript關閉和可變範圍
我敢肯定我在這裏還有其他一些錯誤,所以請在你認爲合適的地方加以注意並糾正。謝謝!
var BuildJSON = {
convert: function() {
$.ajax({
type: "GET",
url: "style2.xml",
dataType: "xml",
success: function(xml) {
var styleData = $.xml2json(xml);
return styleData; // Do I need to return this somehow?
}
//How to get access to styleData??
});
},
styleData: this.convert();
};
var myClass = function() {
this.info = BuildJSON.styleData;
};
var myObject = new myClass;
alert(myObject.info.Style[0].name);
是變量'myObject'和'BuildJSON'事先聲明? – 2012-07-22 23:23:58
之前是什麼?BuildJSON是對象文本,並myObject的是從myClass創建的新對象,對嗎? – 2012-07-22 23:27:39
在上面發佈的代碼之前,如果這兩個變量第一次出現在上面的代碼中,則必須在它們前面放置一個'var',因此:'var BuildJSON = {...'和'var myObject = ...' – 2012-07-22 23:29:07