让我们通过代码示例来看一下 Object.keys
返回键的顺序:
const obj = {
2: 'two',
1: 'one',
b: 'bee',
a: 'aye',
3: 'three',
[Symbol('sym')]: 'symbol'
};
console.log(Object.keys(obj));
// 输出: ["1", "2", "3", "b", "a"]
在这个例子中,Object.keys
返回了键 ["1", "2", "3", "b", "a"],顺序如下:
Object.keys
的返回值中,因为它们是 Symbol 键。整数索引属性:
字符串键属性:
Symbol 键属性:
Object.keys
的返回值中。const obj = {
a: 'first',
3: 'three',
b: 'second',
1: 'one',
2: 'two',
c: 'third'
};
console.log(Object.keys(obj));
// 输出: ["1", "2", "3", "a", "b", "c"]
在这个例子中,Object.keys
返回的键顺序是 ["1", "2", "3", "a", "b", "c"]:
Object.keys
返回的键是有序的,按整数索引属性升序排列,其次是按添加顺序排列的字符串键属性。然而,这个顺序可能不会总是符合直觉,因此在使用时要理解它的行为。