如何在js中声明非全局静态方法?Javascript:我如何声明非全局静态方法?
foo.bar = function() {
function testing{
console.log("statckoverlow rocks!");
}
function testing2{
console.log("testing2 funtction");
}
}
如何调用测试功能?我是JS的新手。
感谢您的帮助。
如何在js中声明非全局静态方法?Javascript:我如何声明非全局静态方法?
foo.bar = function() {
function testing{
console.log("statckoverlow rocks!");
}
function testing2{
console.log("testing2 funtction");
}
}
如何调用测试功能?我是JS的新手。
感谢您的帮助。
你可能想的对象。
foo.bar = {
testing: function() {
console.log("statckoverlow rocks!");
},
testing2: function() {
console.log("testing2 funtction");
}
};
然后,例如,拨打foo.bar.testing()
。
你可以这样做:
foo.bar = (function() {
var testing = function() {
console.log("statckoverlow rocks!");
};
var testing2 = function() {
console.log("testing2 funtction");
};
return {
testing: testing,
testing2: testing2
};
}());
// call them
foo.bar.testing();
foo.bar.testing2();
您是不是要找:
var foo = {
bar: {
testing: function()
{
console.log("statckoverlow rocks!");
},
testing2: function()
{
console.log("testing2 funtction");
}
}
};
foo.bar.testing();
foo.bar.testing2();
// Constructor
function Foo() {
var myvar = 'hey'; // private
this.property = myvar;
this.method = function() { ... };
}
Foo.prototype = {
staticMethod: function() {
console.log(this.property);
}
}
var foo = new Foo();
foo.staticMethod(); //=> hey
为什么我们需要for.bar =(函数(){} .....());它似乎让事情变得复杂 – 2012-08-10 04:05:56
** @ Kit Ho **这是一个自我执行的函数,它创建一个单例。如果你在JavaScript中使用“类”或原型,请检查我的答案我相信这就是你所说的静态方法。 – elclanrs 2012-08-10 04:09:00