JSON.stringify是否保留数组中对象的顺序

我正在创建一个JavaScript对象,如下所示

var myObjects ; 

for(var i = 0; i <10;i++){

var eachObject = {"id" : i};

myObjects .push(eachObject );

}

message = {

"employeeDetails" : myObjects

}

之后,我将它们如下

JSON.stringify" title="stringify">stringify(message);

上面的方法是否按照对象先前的顺序对它们进行了字符串化处理?字符串化后,它们将按照以前的顺序排列为0,1,2 .... 9吗?

回答:

文档中没有任何内容可以明确确认数组项的顺序已保留。但是,文档指出,对于非数组属性,不能保证顺序:

非数组对象的属性不能保证以任何特定顺序进行字符串化。不要依赖于字符串化中同一对象内属性的顺序。

https://developer.mozilla.org/zh-

CN/docs/Web/JavaScript/Reference/Global_Objects/JSON/stringify

即使保留数组项的顺序,我也不会指望它,而是自己对这些项进行排序。毕竟,很可能会有一些业务或表示逻辑来指示应如何对项目进行分类。

以上是 JSON.stringify是否保留数组中对象的顺序 的全部内容, 来源链接: utcz.com/qa/404866.html

回到顶部