javascript - 以对象的字段作为参数获取 javascript 对象的字段名称

标签 javascript

我有一个对象,例如

let foo = {
  firstName: 'David',
  lastName: 'Divad'
};

我想获取 foo.firstName 的字符串“firstName” 。 我发现有一种方法可以获取它,但需要对索引进行硬编码: Javascript get Object property Name

我可以通过调用 Object.keys(foo)[0] 获取“firstName” 但我不想对索引进行硬编码,因为如果索引发生更改,我无法在编译、验证时检测到代码中的错误。所以我需要从字段 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()

let foo = {
  firstName: 'David',
  lastName: 'Divad'
};

console.log(Object.keys(foo)[0]);

关于javascript - 以对象的字段作为参数获取 javascript 对象的字段名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60185576/

相关文章:

javascript - SVG foreignObject 未在 Chrome 中显示

javascript - 触发 Lightbox onLoad w/Delay

javascript - 如何在不重置表单的情况下显示 javascript 警报

javascript - 复选框创建在 ie7 中不起作用

javascript - 当在 phantomjs 中发出某些请求时,chrome、firefox、ie 浏览器中存在的 google cookie 是否会发送?

javascript - <select> 的获取值显示为未定义。 (Angular.js)

javascript - 带有动态错误消息的 angularJs 表单验证

javascript - 当当前焦点元素从 DOM 中移除时,如何挽救焦点?

javascript - 无法为 <md-app-content> vue 设置样式

javascript - 突出显示 html 文档中的文本