修改JSON文件,同时保留对象键顺序

时间:2016-09-15 10:44:57

标签: json node.js object

在NodeJS中解析JSON文件,对其进行微小修改,然后将其写回磁盘,而不更改其中任何对象的任何键的顺序,有什么好方法?

解决通常的问题“但JSON不保证关键顺序!你所做的不是JSON!你会为每个人打破互联网!”:

  • 人类经常使用JSON配置文件。即使关键顺序对程序没有意义,它们也可能以某种方式对其进行组织,并且不希望看到该移动。
  • JSON文件通常会提交到源代码管理中。无理由更改密钥顺序会导致修订历史记录垃圾邮件。
  • JSON文件通常用于互操作性。仅仅因为我的程序是纯粹和神圣的,并且符合标准并不意味着它与之互操作的其他程序是。

所以:显然这还不够:

var j = require('myfile.json');
...
fs.writeFileSync('myfile.json', JSON.stringify(j));

如果不从头开始编写完整的解析器,怎么做呢?

0 个答案:

没有答案