为了澄清,我有一个像这样的JS对象
let foo = {
fieldA: 'local',
fieldB:
[ 'val1',
'val2',
'val3' ],
fieldC: [],
fieldD: 10,
fieldE:
[ { propA: 1,
propB: 'foo' } ]
}
我想将其写入foo.js
文件,并像exports.foo = {}
一样导出
例如:
exports.foo = {
fieldA: 'local',
fieldB:
[ 'val1',
'val2',
'val3' ],
fieldC: [],
fieldD: 10,
fieldE:
[ { propA: 1,
propB: 'foo' } ]
}
我通过做fs.writeFileSync('./foo.js', JSON.stringify(foo, null, 2));
得到了写作部分,它当然是一个字符串化的版本:
{
"fieldA": "local",
"fieldB":
[ "val1",
"val2",
"val3" ],
"fieldC": [],
"fieldD": 10,
"fieldE":
[ { "propA": 1,
"propB": "foo" } ]
}
我在这里想念什么?
答案 0 :(得分:1)
如果要像定义的那样输出对象的属性,可以使用util.inspect()
。注意,您必须自己输出其余的JS语句。例如:
https://repl.it/@mwittig/Object
const util = require('util')
let foo = {
fieldA: 'local',
fieldB:
[ 'val1',
'val2',
'val3' ],
fieldC: [],
fieldD: 10,
fieldE:
[ { propA: 1,
propB: 'foo' } ]
}
console.log("let foo = " + util.inspect(foo, {showHidden: false, compact: false, depth: null}))