簡體   English   中英

JS:將字符串轉換為數組

[英]JS: convert string to array

我有這串

foo = "[[0,0,0,0],[1,24,3,3],[2,24,0,3],[3,24,0,3],[4,24,19,3]]";

如何將其轉換為JavaScript數組(可能不拆分字符串,因為數組中有16,000個以上的值,並且我想節省時間)?

您是否要將所有子陣列合並為一個? 如果是,則可以嘗試使用以下代碼段:

 var foo = '[[0,0,0,0],[1,24,3,3],[2,24,0,3],[3,24,0,3],[4,24,19,3]]'; var list = JSON.parse(foo); var combined = new Array(); for (var counter = 0; counter < list.length; counter++) { for(var index = 0; index < list[counter].length; index++) { combined.push(list[counter][index]); } } console.log(combined); 

您可以使用JSON.parse將字符串轉換為數組,然后使用.concat方法將數組合並為一個。

演示

 var foo = "[[0,0,0,0],[1,24,3,3],[2,24,0,3],[3,24,0,3],[4,24,19,3]]"; var output = JSON.parse(foo); var merged = [].concat.apply([], output); console.log(merged); 

利用數組上可用的reduce函數

 var foo = "[[0,0,0,0],[1,24,3,3],[2,24,0,3],[3,24,0,3],[4,24,19,3]]"; var nested_array = JSON.parse(foo); var output = nested_array.reduce(function(prev, curr) { return prev.concat(curr); }); console.log(output) 

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM