繁体   English   中英

有没有办法通过查找构造函数来获取类的名称

[英]Is there a way to get a classes' name through finding a constructor

我正在尝试通过 class 中的构造函数名称来获取类名称,类似于他们对此问题的答案如何获取 JavaScript 对象的 class?

我想要做的是找到id为 0 的项目并获取name的第二个构造函数

class item {
    constructor(id, name, price) {
        this.id = id
        this.name = name
        this.price = price
    }
const Bar = new item(0, "Candy bar", "$1") 
const Gum = new item(1, "Gum, "$.5")

在这种情况下,我需要能够抓取任何 id,例如 1,并使用它来查找项目的名称

所以我想做一些接近

var thisItem = item.with.id = 1
console.log(thisItem.name)

您可以使用Map做到这一点,它允许您使用这样的keyvalue保存数据

它有很多可以帮助的功能,比如has , get等等

 const data = new Map(); data.set(1, {name: 'john', price: 145}); data.set(2, {name: 'taylor', price: 20}); if(data.has(1)){ console.log(data.get(1).name); } data.forEach((el) => { console.log(el); });

对不起,@DaveNewton 帮我弄明白了

class item {
    constructor(id, name, price) {
        this.id = id
        this.name = name
        this.price = price
        items.push([id, name, price])
    }
}

我在 class 项中有 this.push,我现在可以使用items[]进行排序

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM