我正在使用JAVASCRIPT,我正在尝试附加一个JSON文件。文件的顶部看起来像这样......
doUpdate(
{
"response": {
"version":"0.1",
.
.
.
);
我希望文件的顶部看起来像这样,然后在末尾添加适当的颜色
doUpdate(
{
"data": {
"response": {
"version":"0.1",
.
.
.
.
}
);
我知道这有点奇怪,但我有一个理论,我正在研究一个问题。
答案 0 :(得分:1)
您需要采取几个步骤来修改函数调用中的对象。基本的,最愚蠢的,容易出错的方式是:
fs = require('fs');
fs.readFile('myfile.js', 'utf8', function (str) {
str = str.replace(/^doUpdate\(|\)$/g, ''); // modify this for newlines and semicolon
obj = JSON.parse(str);
obj['newContent'] = 'foo';
obj['moreContent'] = 'bar';
str = 'doUpdate(' + JSON.stringify(obj) + ')'; // or stringify(obj, null, 2) for pretty-print
console.log(str);
// or fs.writeFile('myfile.js', str);
});
更强大的方法是使用Esprima解析和构建AST,然后抓取对象,并重建输出js。