如何在js中获取构造函数类的参数数组?有可能吗?提前谢谢。
class Product {
constructor(id, name, price, category, stock){
this.id = id;
this.name = name;
this.price = price;
this.category = category;
this.stock = stock;
}
};
console.log(Product.constructor.params);
//expected output = ['id', 'name', 'price', 'category', 'stock'];
3条答案
按热度按时间zpgglvta1#
受@porter answer和@evolutionxbox的启发,我认为使用
.match()
这样地:我之前的回答是返回对象属性,这可能与构造函数中使用的参数不同。。。
现在使用
.match()
将确保返回的是真正的constructor
论据。m0rkklqb2#
vktxenjb3#
我在评论中的观点是,你似乎从错误的方向来解决这个问题。也许采取这种方法。具有标签数组和数据数组,并将它们传递到类中。您仍然可以在其他代码中访问(和验证)标签数组,而且一切都可以正常工作。
或者,如果您的产品在属性方面是相同的,您可以使用它们的数组,然后使用
Object.keys
获取第一个对象的标签。