【Infragistics教程】在javascript类中添加静态成员属性

【下载Infragistics Ultimate最新版本】

在一个javascript类中创建一个属性的需求,它需要被所有对象实例共享。在编程中,这些类型的属性称为静态属性。

当需要静态成员属性时,有多种情况:

  • 计算从特定类创建的对象实例数时
  • 在类级别而不是对象实例级别等记录一些信息时。

要创建静态属性,需要清楚两件重要的事情:

  1. javascript类不能有成员属性。只能使用构造函数创建它
  2. 与函数构造函数一样,javascript类也有一个原型

1

2

3

4

5

6

7

8

9

class Foo {

  

    constructor(goal) {

        this.goal = goal;

        Foo.prototype.objectcount++;

    }

  

}

Foo.prototype.objectcount = 0;

让我们来谈谈foo类的实现,

  1. 我们向foo类原型添加了一个属性
  2. 在构造函数中增加它,因为每次创建对象时都会调用构造函数

本质上,要创建静态属性成员,请向类原型对象添加属性。现在,创建一个Foo类的实例,

1

2

3

4

5

6

7

8

let f1 = new Foo(78);

console.log(f1.objectcount); // 1

let f2 = new Foo(45);

console.log(f2.objectcount)// 2

let f3 = new Foo(45);

console.log(f3.objectcount)// 2

console.log(f1.objectcount === f2.objectcount);// true

console.log(f2.objectcount === f3.objectcount);// true

现在可以看到,objectcount跟踪所有对象的计数。对于所有对象实例也是相同的,因此,它可以称为JavaScript类的静态成员属性。

猜你喜欢

转载自blog.csdn.net/weixin_43577863/article/details/85335475