猿问
实现某个类的静态方法,调用后可得到此构造函数/class已经new了多少个实例?
调用:
ClassA.getInstanceNumber()
慕侠2389804
浏览 529
回答 3
3回答
幕布斯7119047
呐,这是es6不用装饰器node和最新chrome可用版class ClassA { constructor() { ClassA.instanceNumber = (ClassA.instanceNumber || 0) + 1; } static getInstanceNumber() { return ClassA.instanceNumber || 0; }}console.log(ClassA.getInstanceNumber());let a = new ClassA();console.log(ClassA.getInstanceNumber());let b = new ClassA();console.log(ClassA.getInstanceNumber());
0
0
0
红颜莎娜
看起来比较适合用 ES6 的修饰器 来做。@countableclass ClassA { // ....}let count = 0;function countable() { count++;}
0
0
0
慕仙森
var Test = (function () { var count = 0; function Test() { if (!(this instanceof Test)) { return new Test(); } count++; } Test.getInstanceNumber = function () { return count; } return Test;})();Test();new Test();new Test();console.log(Test.getInstanceNumber());//3
0
0
0
随时随地看视频
慕课网APP
相关分类
JavaScript
我要回答