静态属性和方法
有时,您需要绑定到类而不是实例的属性或方法,也就是,静态属性和方法。在JavaScript中很容易做到这一点,因为函数是可以按需要设置其属性和方法的对象。由于在JavaScript中构造函数表示类,因此可以通过在构造函数中设置静态方法和属性,直接将它们添加到类中,如下所示:
function DateTime() { } // set static method now() DateTime.now = function() { return new Date(); }; alert(DateTime.now());
在JavaScript中调用静态方法的语法与在C#中几乎完全相同。这不应当让人感到吃惊,因为构造函数的名称实际上是类的名称。这样,就有了类、公共属性/方法,以及静态属性/方法。还需要其他什么吗?当然,私有成员。但JavaScript本身并不支持私有成员(同样,也不支持受保护成员)。任何人都可以访问对象的所有属性和方法。但我们有办法让类中包含私有成员,但在此之前,您首先需要理解毕包。
下一节:闭包