在我的web服務,我在該方法返回一個JSON對象:解析JSON對象
{name:'xx'}
使用AJAX來發送請求,然後使用「EVAL」
解析它們onComplete:function(req){
var data=eval(req.responseText);
//do something according data
}
但是,我無法獲取'數據'。
當我retrun以下字符串:
[{name:'xx'}]
它的工作,我也得到了「數據」作爲一個數組。
通過google,我知道它是由返回字符串中的'{'引起的。
所以我想知道是否沒有辦法重啓一個json對象?
可能的重複[爲什麼JavaScript的eval需要括號來評估JSON數據?](http://stackoverflow.com/questions/964397/why-does-javascripts-eval-need-parentheses-to-eval-json-數據) – Quentin
另外,[這不是JSON](http://jsonlint.com)。 – Quentin
此外,eval是一個緩慢,難以調試和危險的方式來解析JSON(尤其是如果它是破JSON)。使用合適的解析器。 jQuery(您似乎正在使用的)內置了一個。如果您返回帶有正確內容類型HTTP標頭(即「application/json」)的JSON,它將自動觸發。 – Quentin