如何使用Javascript读取JSON文件并将其转换为对象

时间:2019-10-09 11:58:14

标签: javascript json

我有一个JSON文件,其中包含我想用Javascript读取的数据,而不是用代码(超过3000行)对其进行硬编码。

我尝试引用HTML并使用JSON,但返回了一个空数组

在HTML中:

<script type="file" src="data.json"></script>

在javascript中

console.log(JSON.parse(data))

我返回一个空数组而不是数据。

2 个答案:

答案 0 :(得分:1)

function readJSON(path) {
    var xhr = new XMLHttpRequest();
    xhr.open('GET', path, true);
    xhr.responseType = 'blob';
    xhr.onload = function(e) { 
      if (this.status == 200) {
          var file = new File([this.response], 'temp');
          var fileReader = new FileReader();
          fileReader.addEventListener('load', function(){
               //do stuff with fileReader.result
          });
          fileReader.readAsText(file);
      } 
    }
    xhr.send();
}

答案 1 :(得分:0)

使用window.fetch

fetch('data.json')
  .then(body => body.json())
  .then(data => {
    //do stuff with data
  });