http://jsfiddle.net/totszwai/WvbPn/2/爲什麼我的JS對象看不到它自己的函數?
function DialogBox() {
this.__DEBUGGING__ = false;
DialogBox.debug = function (b) {
this.__DEBUGGING__ = b;
};
DialogBox.test = function (b) {
alert("hello worodl");
};
};
$(document).ready(function() {
dialogbox = new DialogBox();
dialogbox.test();
});
我想不出我做錯了什麼在那裏。我
DialogBox.prototype.test
DialogBox.test
test
試了一下,我試圖讓這個內部調用自身的功能時,我並不需要把this
所有的時間...例如:this.test()
更新: 也有沒有辦法在調用私人函數時不要在任何地方輸入「this」?通常我只寫一次簡單的全局函數,但現在我正在嘗試寫一些不同的東西,並且我將在我的課程中的所有位置調用這些私有函數。所以我試圖避免在任何地方使用「this」...更不用說它使得代碼的可讀性非常糟糕。
就像Java(不是JS)中的例子,你不需要在任何地方輸入「this」。
此外,您提供的示例將對話框放入全局名稱空間。如果不是這樣設計的,請將「var」放在前面。 – tjameson 2013-03-16 01:39:39