我想這個字符串轉換:字符串二維陣列
'[
['Row1 of first array', 'Row2 of first array'],
['Row1 of 2nd array', 'Row2 of 2nd array']
]'
向用一個維度的三個陣列和兩個項目的陣列。
我的期望輸出是具有2個元素的數組:
- 陣列1個
- 陣列2
而且每個陣列具有內部的兩個元素。
有沒有在Jquery做這種轉換?
我想這個字符串轉換:字符串二維陣列
'[
['Row1 of first array', 'Row2 of first array'],
['Row1 of 2nd array', 'Row2 of 2nd array']
]'
向用一個維度的三個陣列和兩個項目的陣列。
我的期望輸出是具有2個元素的數組:
而且每個陣列具有內部的兩個元素。
有沒有在Jquery做這種轉換?
這不是一個有效的字符串 - 你在單引號內嵌套單引號。但是,如果你的字符串轉換成用在裏面的雙引號一個:
str = '[ ["Row1 of first array", "Row2 of first array"], ["Row1 of 2nd array", "Row2 of 2nd array"] ]'
那麼你可以簡單地分析它作爲一個JSON對象:
arr = $.parseJSON(str); // returns a two-dimensional array
這是遠遠比使用eval
安全,只有當你完全知道字符串中的內容時才應該這樣做,即使如此,這也是一個懶惰開發人員的標誌。當使用parseJSON
時,您知道在完成任務後您會獲得對象或陣列 - 使用eval
時,可能會發生任何事情。
我想EVAL將工作:
var str = eval("[['Row1 of first array', 'Row2 of first array'],['Row1 of 2nd array', 'Row2 of 2nd array']]");
console.log(str);
根據一般原則對此進行回撥。永遠不會鼓勵年輕的編碼者使用'eval'。 – Blazemonger
你能張貼預期的輸出? –
這不是一個有效的字符串 - 你需要在單引號內使用雙引號。 – Blazemonger
如果你使用'eval()',這個字符串將被解釋爲數組 –