大家好我是javascript的新手,我正在努力学习Javascript"蒂姆赖特。我试图使用JSON.parse从字符串转换但是当我运行代码时,我在第26行遇到错误Uncaught SyntaxError:Unexpected token}但我在第26行看不到}}尝试复制并粘贴pdf中的代码,看看我是否做错了但仍然会出现同样的错误。
//create an instance of the xmlhttrequest
function getHTTPObject() {
//initialize the variable
var xhr;
if (window.XMLHttpRequest) {
xhr= new XMLHttpRequest();
}else if (window.ActiveXObject) {
xhr = new ActiveXObject("Msxml2.XMLHTTP");
}
return xhr;
}//end getHTTPObject
function ajaxCall(dataUrl, callback) {
var request = getHTTPObject();
request.onreadystatechange = function() {
if ( request.readyState === 4 && request.status === 200) {
var contacts = JSON.parse(request.responseText);
if(typeof callback === "function") {
callback(contacts);
}//end function check
}//end ajax status check
} //end onreadystatechange
request.open("GET", dataUrl, true);
request.send(null);
}
ajaxCall('data/contacts.json');
我知道我可能只是错过了一些非常明显但我无法看到它的东西。谢谢你的帮助。
在这里更新我的json文件:
{ "addressBook" : [
{
"name": "Elysha",
"email":"elysha@gmail.com",
},
{
"name": "Luke",
"email":"lukerobingregory@gmail.com",
},
{
"name": "Dad",
"email":"dad@gmail.com",
},
{
"name": "Mum",
"email":"mum@gmail.com",
}
]
}
答案 0 :(得分:1)
JSON字符串中有一个尾随逗号:
{
"name": "Mum",
"email":"mum@gmail.com",
} ^-- remove this comma, and corresponding commas in all the other "objects".
虽然您可以在JS对象文字中使用跟踪逗号,但JSON语法中不允许使用它。