Javascript 将结果与json转换混淆
我正在编写一个代码,其中进行了一个REST调用,并将结果发送回 使用下面的js代码(Ajax/jQuery),我正在提取数据Javascript 将结果与json转换混淆,javascript,jquery,json,Javascript,Jquery,Json,我正在编写一个代码,其中进行了一个REST调用,并将结果发送回 使用下面的js代码(Ajax/jQuery),我正在提取数据 success : function(msg) { dataObj = msg; var jsonResp = JSON.stringify(dataObj); alert(dataObj.answer + "\t" + dataObj); console.log(dataO
success : function(msg) {
dataObj = msg;
var jsonResp = JSON.stringify(dataObj);
alert(dataObj.answer + "\t" + dataObj);
console.log(dataObj.answer + "\t"+ dataObj);
document.getElementById('time').innerHTML = dataObj;
}
我得到的控制台输出是
undefined {"answer":"Hello","score":"100"}
而不是
Hello {"answer":"Hello","score":"100"}
请让我知道我哪里出了问题,我怎样才能解决这个问题
谢谢
应该是
dataObj = JSON.parse(msg);
或者您可以使用
dataType:'json'
选项来$.ajax()
,以便jQuery将自动执行此操作。msg
是一个json字符串,而不是一个对象。您需要使用JSON.parse()
将其转换为对象。您还可以将数据类型:“json”
放入$.ajax
调用中,然后jQuery将自动执行此操作。您应该使用json.stringify而不是json.parsemsg
是字符串还是json对象?@AniketSinha它显然是字符串,因为当他将它连接到控制台.log()
调用中时,他看到了它。如果它是一个对象,它将显示[object object]
dataObj = JSON.parse(msg);