协慌网

登录 贡献 社区

如何访问 Javascript 对象的第一个属性?

是否有一种优雅的方式来访问对象的第一个属性...

  1. 您不知道物业名称的地方
  2. 而不使用诸如for .. in或 jQuery 的$.each

例如,我需要在不知道 foo1 名称的情况下foo1

var example = {
    foo1: { /* stuff1 */},
    foo2: { /* stuff2 */},
    foo3: { /* stuff3 */}
};

答案

var obj = { first: 'someVal' };
obj[Object.keys(obj)[0]]; //returns 'someVal'

使用此方法,您还可以通过索引访问其他属性。请注意! Object.keys返回顺序,但是所有主要浏览器的实现都非正式地保证了返回顺序,有关详细信息,请阅读 https://stackoverflow.com/a/23202095。

在循环中尝试for … in并在第一次迭代后中断:

for (var prop in object) {
    // object[prop]
    break;
}

您也可以执行Object.values(example)[0]