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

你不知道你的财产的名字而不使用像..这样的循环。。in或jQuery的$.each

例如,我需要在不知道foo1名称的情况下访问foo1对象:

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

当前回答

我们也可以采用这种方法。

var example = {
  foo1: { /* stuff1 */},
  foo2: { /* stuff2 */},
  foo3: { /* stuff3 */}
}; 
Object.entries(example)[0][1];

其他回答

没有“第一”属性。对象键是无序的。

如果您使用for(var foo in bar)对它们进行循环,您将以某种顺序获取它们,但将来可能会发生变化(尤其是添加或删除其他键时)。

我们也可以采用这种方法。

var example = {
  foo1: { /* stuff1 */},
  foo2: { /* stuff2 */},
  foo3: { /* stuff3 */}
}; 
Object.entries(example)[0][1];

也可以执行Object.values(示例)[0]。

下面是获取第一个密钥的更简单的方法:var对象={foo1:'第一个属性“foo1”的值',foo2:{/*stuff2*/},foo3:{/*stuff3*/}};let[firstKey]=对象.keys(对象)console.log(firstKey)console.log(对象[firstKey])

这一点以前已经在这里讨论过了。

第一个概念不适用于对象财产,而for的顺序。。。在循环中并没有得到规范的保证,但实际上它是可靠的FIFO,除了chrome(错误报告)。据此做出决定。