未定義的函數給定以下的Javascript例如:的Javascript內部模塊
var obj = function() {
var _c = function() {
console.log("c")
}
return {
a: function() {
b();
},
b: function() {
console.log("b");
},
c: function() {
_c();
}
}
}();
obj.a()
調用給出了B不是限定的錯誤。通過將b()
更改爲this.b()
即可解決此錯誤。任何人都可以幫助解釋爲什麼這是必要的,而c
可以訪問_c
?
因爲'b'是一個屬性,而不是一個變量。 – Oriol
沒有'函數b()',只有'{b:function(){}}'這是完全不同的,它是一個對象的屬性 – adeneo