我在本地系统中保存了一个JSON文件,并创建了一个JavaScript文件,以便读取JSON文件并打印数据。下面是JSON文件:
{"resource":"A","literals":["B","C","D"]}
假设这是JSON文件的路径:/Users/Documents/workspace/test.json
。
有人能帮我写一段简单的代码来读取JSON文件并打印JavaScript格式的数据吗?
发布于 2016-01-04 01:37:33
来自硬盘的The loading of a .json
file是一个异步操作,因此它需要指定一个回调函数,以便在文件加载后执行。
function readTextFile(file, callback) {
var rawFile = new XMLHttpRequest();
rawFile.overrideMimeType("application/json");
rawFile.open("GET", file, true);
rawFile.onreadystatechange = function() {
if (rawFile.readyState === 4 && rawFile.status == "200") {
callback(rawFile.responseText);
}
}
rawFile.send(null);
}
//usage:
readTextFile("/Users/Documents/workspace/test.json", function(text){
var data = JSON.parse(text);
console.log(data);
});
此函数还可用于加载.html
或.txt
文件,方法是覆盖"text/html"
、"text/plain"
等的mime类型参数。
发布于 2017-07-11 21:27:49
使用in Node.js or when using require.js in the browser时,您可以简单地执行以下操作:
let json = require('/Users/Documents/workspace/test.json');
console.log(json, 'the json obj');
注意:文件加载一次,后续调用将使用缓存。
发布于 2018-06-13 18:59:45
使用Fetch API是最简单的解决方案:
fetch("test.json")
.then(response => response.json())
.then(json => console.log(json));
它在Firefox中运行完美,但在Chrome中你必须自定义安全设置。
https://stackoverflow.com/questions/19706046
复制相似问题