关门了。这个问题是不可复制的或由打字错误引起的。它目前不接受答案。
想要改进这个问题吗?更新问题,使其成为主题堆栈溢出。6个月前就关门了。
改进这个问题
我是Javascript的新手,遇到了一些麻烦。我尝试在我的js代码中解析一个Json文件。我一直收到标题中提到的错误。似乎我的json格式错误,但我已经检查过了。我不知道有什么问题。错误发生在JSON.parse()
document.getElementById('loadjson').addEventListener('click', function(e) {
e.preventDefault();
var jsonData = document.getElementById('jsondata').value;
fetch('http://127.0.0.1:5500/src/main/resources/savedData.json')
.then(response => response.json())
.then(data => console.log(data))
.then(function(data) {
var obj = JSON.parse(data);
document.getElementById("demo").innerHTML =
obj.pages[0].url;
});
});
{
"pages":[
{
"wikipage":{
"latestModifier":{
},
"author":{
"name":"some name",
"username":"some userid"
},
"latest_modification":"Tue Mar 14 10:42:33 CET 2017",
"url":"some url"
}
},
{
"wikipage":{
"latestModifier":{
},
"author":{
"name":"some name",
"username":"some userid"
},
"latest_modification":"Thu Jun 08 08:12:38 CEST 2017",
"url":"some url"
}
}
]
}
发布于 2020-09-11 16:30:32
尝试以下操作:
fetch('http://127.0.0.1:5500/src/main/resources/savedData.json')
.then(response => response.json())
.then(data => {
var obj = data;
document.getElementById("demo").innerHTML =
obj.pages[0].url;
} );
你不需要使用JSON.parse,因为你已经有了一个有效的对象。@Quentin给出了一个很好的解释
https://stackoverflow.com/questions/63843104
复制相似问题