我有一个字符串值,例如:
1,2,3;4,5,6;7,8,9;a,b,c;d,e,f;g,h,i
我需要将其转换为 JavaScript 中的数组,例如
1 2 3
4 5 6
7 8 9
etc.
任何人都可以建议我如何做到这一点吗?
我有一个字符串值,例如:
1,2,3;4,5,6;7,8,9;a,b,c;d,e,f;g,h,i
我需要将其转换为 JavaScript 中的数组,例如
1 2 3
4 5 6
7 8 9
etc.
任何人都可以建议我如何做到这一点吗?
您正在寻找String.split
. 在您的情况下,您需要拆分两次。一旦;
将字符串拆分为块,然后分别拆分每个块,
以达到您正在寻找的数组结构。
function chunkSplit(str) {
var chunks = str.split(';'), // split str on ';'
nChunks = chunks.length,
n = 0;
for (; n < nChunks; ++n) {
chunks[n] = chunks[n].split(','); // split each chunk with ','
}
return chunks;
}
var arr = chunkSplit("1,2,3;4,5,6;7,8,9;a,b,c;d,e,f;g,h,i");
尝试以下操作:
var yourString = '1,2,3;4,5,6;7,8,9;a,b,c;d,e,f;g,h,i';
var array = [];
yourString.split(';').forEach(function(value) {
array.push(value.split(','));
});
.forEach()
在 IE <=8 中不支持如果您需要一个多维数组,您可以尝试:
var array = yourString.split(';');
var arrCount = array.length;
for (var i = 0; i < arrCount; i++)
{
array[i] = array[i].split(',');
}
以下拆分命令应该会有所帮助:
yourArray = yourString.split(";");