我有一个Javascript对象,我需要将其转换为JSON。该对象位于.js文件中。我需要读取.js文件并将对象转换为JSON。我正在尝试使用NodeJS。这是.js文件中的对象:
module.exports = [
'example1',
'test1',
'example2',
'tester3'
];
这是我用来读取文件的代码:
var fs = require('fs');
var content;
fs.readFile('/someotherpath/somewhereelse/myfile.js'), function read(err, data) {
if (err) {
throw err;
}
content = data;
processFile();
});
function processFile() {
console.log(content);
}
我的结果是:
<Buffer 2f 2f 2f 4c 69 73 74 20 77 65 62 68 6f 6f 6b 20 70 61 74 68 73 20 74 68 61 74 20 73 68 6f 75 6c 64 20 62 65 20 70 72 6f 78 69 65 64 0a 2f 2f 20 74 6f ... >
如何将文件(对象)的真实内容转换为JSON字符串?
答案 0 :(得分:2)
只需使用require
:
var data = require('/someotherpath/somewhereelse/myfile.js');
var jsonString = JSON.stringify(data);
答案 1 :(得分:0)
您可以使用Javascript require函数来加载js文件。然后使用内置的Javascript模块对Json对象进行字符串化处理。
这里是一个例子。
var mod = require('./mod');
console.log(JSON.stringify(mod));
在Mozilla开发人员网络中,MDN“ JSON.stringify()方法将JavaScript值转换为JSON字符串...”
签出MDN 如果您想了解有关stringify()的更多信息,请参见说明及其参数。
答案 2 :(得分:-1)
如果未指定编码,则返回原始缓冲区,因此应使用
fs.readFile('/someotherpath/somewhereelse/myfile.js','utf8', function read(err, data) {
if (err) {
throw err;
}
content = data;
processFile();
});
或者您可以简单地转换为字符串data.toString()