【发布时间】:2020-02-12 09:56:19
【问题描述】:
我有一个对象,比如
let foo = {
firstName: 'David',
lastName: 'Divad'
};
我想得到foo.firstName 的字符串'firstName'。
我发现有一种方法可以得到它,但需要对索引进行硬编码:
Javascript get Object property Name
我可以通过调用 Object.keys(foo)[0] 获得“名字” 但我不想对索引进行硬编码,因为如果更改了索引,我无法在编译验证时检测到代码中的错误。所以我需要从字段 foo.firstName 中获取字符串字段名称。
我想知道是否有下面的 getFieldName 之类的函数可以做到这一点。 例如:
let foo = {
firstName: 'David',
lastName: 'Divad'
};
console.log(getFieldName(foo.firstName)); // expect print out 'firstName'
或
console.log(getFieldName(foo, foo.firstName)); // expect print out 'firstName'
有什么方法可以获取以对象的字段为参数的 javaScript 对象的字段名? 谁能给我一个想法?
【问题讨论】:
-
你可以通过 Object.keys 获取它们的列表
-
这能回答你的问题吗? Javascript get Object property Name
-
谢谢大家的回答,我的意思是我需要获取带有对象字段作为参数的字符串字段名称,而不需要任何索引硬代码。只是字段作为参数。我刚刚更新了问题。
-
你的意思是
let key = foo["firstName"] ? "firstname" : "Not available"
标签: javascript