3 回答

TA貢獻1796條經驗 獲得超7個贊
事實證明,我的問題的真正答案是解析并沒有排除某些屬性。相反,我被 Chrome 中的控制臺語句誤導了。我的經歷是,控制臺日志僅評估在日志中展開時記錄的對象的狀態。我假設它代表寫入日志條目時的狀態。發生的情況是,稍后在代碼中修改引用,并且當我在其他代碼對對象進行更改后讀取它時,控制臺反映了更改后的對象引用。感謝所有閱讀本文并提供任何建議的人,但我擔心我自己對其工作原理的誤解才是問題的真正原因。

TA貢獻1875條經驗 獲得超3個贊
原因是 JSON.parse 對于特殊字符無法正常工作。解決方案如下:
function escapeUnicode(str) {
return str.replace(/[^\0-~]/g, function(ch) {
return "\\u" + ("0000" + ch.charCodeAt().toString(16)).slice(-4);
});
}

TA貢獻1848條經驗 獲得超2個贊
我不確定為什么您只得到部分返回,但您的 JSON 字符串看起來無效。您需要在、和屬性:后添加冒號。以下內容應該正確解析。"a""b""c"
{
"a": "A",
"b": "B",
"c": "C",
"id": "726abb0e-6cc6-4496-94a2-906439c06a30",
"1": 12345,
"2": "stringVal",
"3": "stringValue"
}
添加回答
舉報