关于javascript:JS读取json文件并用作对象

JS read json file and use as an object

我在试着把数组中的项目数放到这一块里

杰森

1
2
3
4
5
6
7
8
9
{
 "collection" : [
    {
     "item":"apple"
    },
    {
     "item":"banana"
    }]
}

使用以下JS(nodejs):更新用户"elssar"的答案

1
2
var data = JSON.parse(fs.readFileSync(filePath));
console.log(data.collection.length);

预期结果:2

如果不指定编码,data将是缓冲区而不是字符串(由于用户nils)。json.parse应该对两者都有效。现在我得到一个错误Unexpected token ? at Object.parse (native)。知道怎么解决这个问题吗?(使用节点5.2.0)


您需要将文件的内容解析为JSON。

1
2
3
4
fs.readFile(filePath, function (error, content) {
    var data = JSON.parse(content);
    console.log(data.collection.length);
});

1
var data = JSON.parse(fs.readFileSync(filePath));

或者,您可以只使用requirejson文件(文件扩展名必须是.json)

1
2
var data = require(filePath);
console.log(data.collection.length);