JavaScript中的静态函数?

时间:2009-11-09 03:30:06

标签: javascript

我有一些示例javascript代码,我希望该函数是静态的。

package pkg { class b { public function increment(x) { return x+1; } } }
//in C#
methInfo.Invoke(null, params); //error bc of null. I dont know how to create class b ATM
//i dont need b so i would like to call the func like this. How do i make increment static?

1 个答案:

答案 0 :(得分:1)

我使用和编写的代码标准是:

MyAwesomeClass = function() {
  this.memberVariable_ = "some-value";
};

MyAwesomeClass.staticFunction = function(x) {
  return x + 1;
};

MyAwesomeClass.prototype.instanceFunction = function(y) {
  this.memberVariable_ += y;
};

因此,要使用此类,您需要执行以下操作:

// Call an instance method
myClassInstance = new MyAwesomeClass();
myClassInstance.instanceFunction(foo);

// Call a static method
var baz = MyAwesomeClass.staticFunction(bar);

要记住Javascript的事情是类本身是一个对象,所以你要将该对象的属性设置为函数。 'prototype'属性是例如方法的特例。