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