Javascript 将结果与json转换混淆

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

我正在编写一个代码,其中进行了一个REST调用,并将结果发送回

使用下面的js代码(Ajax/jQuery),我正在提取数据

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.parse
msg
是字符串还是json对象?@AniketSinha它显然是字符串,因为当他将它连接到
控制台.log()
调用中时,他看到了它。如果它是一个对象,它将显示
[object object]
dataObj = JSON.parse(msg);