将Javascript对象转换为JSON字符串

将Javascript对象转换为JSON字符串,javascript,node.js,Javascript,Node.js,我有一个Javascript对象需要转换成JSON。该对象位于.js文件中。我需要读取.js文件并将对象转换为JSON。我正试着用NodeJS做这件事。下面是.js文件中的对象: module.exports = [ 'example1', 'test1', 'example2', 'tester3' ]; 下面是我用来读取文件的代码: var fs = require('fs'); var content; fs.readFile('/someotherpath/somewh

我有一个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字符串?

只需使用
require

 var data = require('/someotherpath/somewhereelse/myfile.js');
 var jsonString = JSON.stringify(data);

如果未指定编码,则返回原始缓冲区,因此应使用

fs.readFile('/someotherpath/somewhereelse/myfile.js','utf8', function read(err, data) {
    if (err) {
        throw err;
    }
    content = data;

    processFile();
});

或者您可以简单地转换为string
data.toString()

您可以使用Javascripts require函数来加载js文件。然后使用Javascript内置模块对Json对象进行字符串化

这里有一个例子

var mod = require('./mod');

console.log(JSON.stringify(mod));
来自Mozilla开发者网络,MDN“JSON.stringify()方法将JavaScript值转换为JSON字符串…”

退房
如果您想阅读有关stringify()的更多信息,请参阅它的说明和参数。

data
只是源代码,
content=data
不会执行它。您必须更改编码,以便将其转换为stringHe不需要字符串,他希望执行变量赋值。