繁体   English   中英

如何在Javascript的属性本身中获取属性名称?

[英]How can I get a property name inside the property itself in Javascript?

有没有办法可以在属性本身中获得属性的名称?

我的意思是这样的:

let myObj = {
    myProperty: {
        name: <propertyName>.toString()
    }
};

console.log(myObj.myProperty.name); // Prints `myProperty`

不,没有。 评估提供该信息的对象初始值设定项时,没有任何可用的方法。

大概是一次性的话,您只需重复这个名字即可。 如果不是一次性的,则可以给自己一个实用程序函数来执行此操作:

 // Define it once... const addProp = (obj, name, value = {}) => { obj[name] = value; value.name = name; return obj; }; // Then using it... let myObj = {}; addProp(myObj, "myProperty"); addProp(myObj, "myOtherProperty", {foo: "bar"}); console.log(myObj.myProperty.name); console.log(myObj.myOtherProperty.name); 

暂无
暂无

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

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