JS读取json文件并用作对象
我想这样得到这个数组内的数组中的项目的数量
JSON
{ "collection" : [ { "item": "apple" }, { "item": "banana" }] }
使用下面的JS (NodeJS) : 用用户'elssar'
var data = JSON.parse(fs.readFileSync(filePath)); console.log(data.collection.length);
预期成果: 2
没有指定编码data
将是一个缓冲区而不是string(感谢用户nils)。 JSON.parse应该适用于两者。 现在我得到一个错误Unexpected token ? at Object.parse (native)
Unexpected token ? at Object.parse (native)
。 任何想法如何解决这个问题? (使用节点5.2.0)
您需要将文件的内容parsing为JSON。
fs.readFile(filePath, function (error, content) { var data = JSON.parse(content); console.log(data.collection.length); });
要么
var data = JSON.parse(fs.readFileSync(filePath));
另外,你可以只require
json文件(文件扩展名需要是.json)
var data = require(filePath); console.log(data.collection.length);