function split(str)
{
var array = str.split(';');
var test[][] = new Array();
for(var i = 0; i < array.length; i++)
{
var arr = array[i].split(',');
for(var j = 0; j < arr.length; j++)
{
test[i][j]=arr[j];
}
}
}
onchange="split('1,2,3;4,5,6;7,8,9;a,b,c;d,e,f;g,h,i')"
它不起作用。我需要将这个字符串拆分为 6*3 多维数组
最佳答案
var array[][] = new Array()
不是声明数组的有效语法。 Javascript 数组是一维的,因此您可以嵌套它们。这意味着您需要自己在每个槽中插入一个新数组,然后才能开始追加。
像这样:http://jsfiddle.net/Squeegy/ShWGB/
function split(str) {
var lines = str.split(';');
var test = [];
for(var i = 0; i < lines.length; i++) {
if (typeof test[i] === 'undefined') {
test[i] = [];
}
var line = lines[i].split(',');
for(var j = 0; j < line.length; j++) {
test[i][j] = line[j];
}
}
return test;
}
console.log(split('a,b,c;d,e,f'));
关于javascript - 在 JavaScript 中处理多维数组不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8814407/