[編輯]我後來modyfing數據和擴展時,它被物體反射,當我可以,我會接受我的答案。[/編輯]JSON.parse()來爲整數返回錯誤值
我有一個需要分析一個簡單的JSON字符串:由繪製圖形的目的C++代碼生成
{"Points": [{"x": 0,"y": 33},{"x": 2200,"y": 28},{"x": 4400,"y": 23},{"x": 6600,"y": 20},{"x": 8800,"y": 19},{"x": 11000,"y": 18},{"x": 13200,"y": 17},{"x": 15400,"y": 15},{"x": 17600,"y": 13},{"x": 19800,"y": 12}]}
的字符串。當我把它粘貼到一個json格式器時,它解析得很好,給出正確的值。我面臨的問題是Y值較奇怪,例如數組「Points」中的第一個對象的y值爲20 - 並且字符串中的任何地方都沒有20。
查看附件圖片,它解釋了一切。之前的圖片有什麼代碼如下:
RequestJSONParse: function(Data)
{
var Request = Data.split("|");
var RequestType = Request[0];
var RequestParams = Request[1];
var RequestData = undefined;
if (typeof Request[2] != "undefined" && Request[2] != "")
{
console.log("---");
console.log(Request[2]);
console.log("---");
RequestData = JSON.parse(Request[2]);
console.log("---");
console.log(RequestData);
console.log("---");
}
我的問題是 - 是一些特殊字符或一種特殊的方式JSON.parse解析具體的X,Y值?或者這是一個編碼問題,或者我甚至無法想到的東西?我已經在這個項目上工作了2年,從未遇到類似這樣的事情,我們的大部分UI都是通過解析JSON數據來完成的。
這是20:'{「x」:6600,「y」:20}' – Pointy
http://jsbin.com/paganawado/1/edit?js,console - 我無法重現該問題。 – Quentin
請注意您的'RequestData'日誌旁邊的藍色'i' - 是否在操作數據 - 看起來它在您登錄後可能已被修改,並且在擴展後您正在查看已修改的數據。 –