javascript – 在console.log中显示对象属性的原始顺序
作者:互联网
我需要进行一些调试才能看到一个JavaScript对象属性的原始顺序,但(至少在chrome devtools中)console.log()显示了一个按字母顺序排列的对象.
例如:
var obj = {
z: 1,
t: 2,
y: 3,
a: 4,
n: 5,
k: 6
}
console.log(obj)显示了这个:
Object {z: 1, t: 2, y: 3, a: 4, n: 5…}
a:4
k:6
n:5
t:2
y:3
z:1
//expected (needed ) original order
z: 1
t: 2
y: 3
a: 4
n: 5
k: 6
解决方法:
console.log确实对属性进行排序,在某些情况下,您可以使用保留顺序的JSON.stringify,例如
console.log(JSON.stringify(obj, null /*replacer function */, 4 /* space */))
注意:与流行的看法相反,js对象维护枚举顺序,按照OwnPropertyKeys specification(首先是整数,然后是插入顺序中的其他属性)
标签:console-log,javascript 来源: https://codeday.me/bug/20190926/1820179.html