Javascript NodeJS:将js对象写入文件并进行导出

Javascript NodeJS:将js对象写入文件并进行导出,javascript,node.js,json,serialization,Javascript,Node.js,Json,Serialization,为了澄清,我有一个JS对象,如下所示 let foo = { fieldA: 'local', fieldB: [ 'val1', 'val2', 'val3' ], fieldC: [], fieldD: 10, fieldE: [ { propA: 1, propB: 'foo' } ] } 我想将它写入一个foo.js文件,并将其导出为exports.foo={} 例如: 我通过执行fs.writeFileSync('.

为了澄清,我有一个JS对象,如下所示

let foo = { 
  fieldA: 'local',
  fieldB:
   [ 'val1',
     'val2',
     'val3' ],
  fieldC: [],
  fieldD: 10,
  fieldE:
   [ { propA: 1,
       propB: 'foo' } ]
}
我想将它写入一个
foo.js
文件,并将其导出为
exports.foo={}

例如:

我通过执行
fs.writeFileSync('./foo.js',JSON.stringify(foo,null,2)),获得了编写部分当然,它是一个字符串化版本:

{ 
  "fieldA": "local",
  "fieldB":
   [ "val1",
     "val2",
     "val3" ],
  "fieldC": [],
  "fieldD": 10,
  "fieldE":
   [ { "propA": 1,
       "propB": "foo" } ]
}

我这里缺少什么?

如果您想像您定义的那样输出对象的属性,可以使用
util.inspect()
。注意,您必须自己输出JS语句的其余部分。例如:


这个怎么了?使用JSON.stringify()将对象转换为JSON,如果读取该文件,则可以使用JSON.parse()将其转换为对象。如果要输出JS对象属性,可以使用util.inspect()
fs.writeFileSync
将参数写入文件。该参数是对象的字符串化表示形式
JSON.stringify()
的结果。如果你想在生成的文件中使用js代码,你必须自己构造它(或者npm中已经有一个用于此的模块)太棒了!多谢各位
{ 
  "fieldA": "local",
  "fieldB":
   [ "val1",
     "val2",
     "val3" ],
  "fieldC": [],
  "fieldD": 10,
  "fieldE":
   [ { "propA": 1,
       "propB": "foo" } ]
}
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}))