我的Ajax調用得到"[['Best Value (62)',62 ],['LPTA (32)',32 ],] "
作爲返回值。我需要將它作爲一個數組傳遞。有沒有辦法使字符串成爲一個數組而不訴諸於eval()
?字符串的JavaScript Array
-2
A
回答
0
0
你有什麼不是JSON,但是有效的JavaScript(假設額外的逗號是複製粘貼錯誤)。而且,就像我不喜歡它,你可以使用eval:
// convert the input in to a javascript array
var o = eval("[['Best Value (62)',62],['LPTA (32)',32]]");
// use jQuery map to grab only the first array value and return
// each selection back as an array
$.map(o, function(a){
return a[0];
}); // ['Best Value (62)','LPTA (32)'];
如果額外的逗號就會留下來,你可以用多一點處理擺脫它:
var data = "[['Best Value (62)',62],['LPTA (32)',32],]";
var o = eval(data.replace(/\],\]$/,']]'));
$.map(o, function(a){
return a[0];
});
0
JSON.parse("[['Best Value (62)',62 ],['LPTA (32)',32 ],]".replace(/(,])$/, ']').replace(/'/g, '"'))
+0
爲什麼downvote?這就是用戶想要的! http://jsfiddle.net/BxqSr/ –
+1
不是dv,但是如何處理字符串中間的單引號?現在你最終會得到一個字符串值,比如''不工作「,'除非給定的數據的值被設置,並且不可能有真正的引號 –
+0
,否則我馬上修復它 –
相關問題
- 1. 生成字符串Array [JavaScript的]
- 2. PHP Array包含字符串
- 3. 的java字符串分割,空Array
- 4. Array返回「Undefined」的字符串GAS
- 5. Java Array與字符串的比較
- 6. 字符串中的Java Double Array錯誤
- 7. numpy object_ array中最長的字符串
- 8. array array of php php by 2字符串和數字
- 9. 將字符串轉換爲字符串後無法反轉字符串Array
- 10. Javascript Array:將元素從字符串更改爲對象
- 11. 字符串中的Javascript字符串
- 12. 的Javascript從字符串
- 13. javascript array只顯示第一個字符
- 14. 在C中使用「Array」字符串
- 15. 過濾SelectListItem使用字符串array.-MVC
- 16. php - array - 非法字符串偏移
- 17. Array對PHP7字符串轉換
- 18. 轉換Array對Java字符串/常規
- 19. Ruby Array打印爲字符串
- 20. 的JavaScript字符串
- 21. 的javascript:字符串
- 22. 從JavaScript字符串
- 23. JavaScript字符串
- 24. 爲什麼Array + Array等於空字符串?
- 25. Javascript字符串排序
- 26. 的Javascript計數字符串
- 27. 的Javascript,添加字符串數組[字符串]
- 28. 如何檢查字符串是否包含List/Array中的任何字符串
- 29. 如何從字符串開頭刪除PHP Array Implode字符
- 30. Javascript數組字符串
如果你真的有這個尾隨逗號,甚至沒有eval()會救你。 – Brian
爲什麼你有這樣的結果,而不是正確的json編碼數組? –
@Brian:尾數的逗號在數組文字中有效嗎? – Bergi