如何获取在javascript中为一个类创建的对象总数?
假设我有以下代码片段:如何获取在javascript中为一个类创建的对象总数?,javascript,javascript-objects,Javascript,Javascript Objects,假设我有以下代码片段: function Airplane(id) { this.id = id; } var air1 = new Airplane(234); var air2 = new Airplane(235); var air3 = new Airplane(236); 是否有任何方法可以获得创建的飞机对象的总数,例如飞机.getCreatedLength()?您可以跟踪附加到构造函数的属性中的对象: function Airplane(id) { this.id
function Airplane(id) {
this.id = id;
}
var air1 = new Airplane(234);
var air2 = new Airplane(235);
var air3 = new Airplane(236);
是否有任何方法可以获得创建的飞机对象的总数,例如
飞机.getCreatedLength()
?您可以跟踪附加到构造函数的属性中的对象:
function Airplane(id) {
this.id = id;
Airplane.instances += 1;
}
Airplane.instances = 0;
var air1 = new Airplane(234);
var air2 = new Airplane(235);
var air3 = new Airplane(236);
console.log(Airplane.instances) // 3
虽然这回答了这个问题,但它似乎纯粹是统计数据。它只说明创建了多少实例,没有说明使用了多少实例,存在于特定的上下文中等等。我的意思是,它很简洁,但我看不出它有什么实际用途。这更多的是关于这个问题是如何表述的,而不是对答案的任何批评。每个实例都可以有一个
destroy
方法来减少这个数字。但总的来说,我同意,我不确定这有什么用,也许是XY问题?什么是“不同的”<代码>var air1=新飞机(234);var air2=新飞机(234)代码>air1和air2是不同的还是相同的?这有什么实际用途?