4 回答

TA貢獻(xiàn)1772條經(jīng)驗(yàn) 獲得超8個(gè)贊
運(yùn)行 console.log(this) 總是一個(gè)好主意。都是關(guān)于“這個(gè)”指的是什么。

TA貢獻(xiàn)1853條經(jīng)驗(yàn) 獲得超18個(gè)贊
這會(huì)起作用。放入調(diào)用的this.data函數(shù)scope變量中parentData,您可以在任何子項(xiàng)上使用該值。
thisinthis.system.load2引用this.system內(nèi)容,它不會(huì)調(diào)用父數(shù)據(jù)。
function Load() {
this.data = {
isLoaded: false,
};
var parentData = this.data;
this.load1 = function() {
console.log(this.data.isLoaded);
};
this.system = {
load2: function() {
console.log(parentData.isLoaded);
}
};
}
let a = new Load();
a.load1();
a.system.load2();

TA貢獻(xiàn)1744條經(jīng)驗(yàn) 獲得超4個(gè)贊
當(dāng)您顯式綁定上下文時(shí)它將起作用:a.system.load2.call(a);

TA貢獻(xiàn)1856條經(jīng)驗(yàn) 獲得超5個(gè)贊
我相信這與范圍界定有關(guān)。
this.data.isLoaded指的是load2的當(dāng)前范圍
this.system = {
load2: function() {
console.log(this.data.isLoaded);
}
};
添加回答
舉報(bào)