Aus*_*tin 5 javascript arrays jquery
我正在尝试使用 jQuery 创建以下我想要输出的示例数组:
[["foo0","foo1"],["foo2","foo3","foo4"],["foo5"]]
Run Code Online (Sandbox Code Playgroud)
我尝试使用的代码:
[["foo0","foo1"],["foo2","foo3","foo4"],["foo5"]]
Run Code Online (Sandbox Code Playgroud)
var counter = 0;
var arr = [];
$('.unknown-number-of-elements').each(function(){
var keyNumber = $(this).val();
var valToPush = "foo"+counter;
if(keyNumber in arr){
arr[keyNumber].push(["'"+ valToPush +"'"]);
}else{
arr[keyNumber] = valToPush;
}
counter++;
});
console.log(arr);Run Code Online (Sandbox Code Playgroud)
上面的代码给出了以下错误:
未捕获的类型错误:arr[keyNumber].push 不是函数
基本上,如果数组键已经存在,我想创建一个子数组并向该子数组添加值。
您永远不会创建子数组,您只将其放入valToPush一个数组中。
执行:arr[keyNumber] = [ valToPush ];创建一个包含您的第一个值的数组。
或者:
if ( !arr[ keyNumber ] ) {
arr[ keyNumber ] = [];
}
arr[ keyNumber ].push( valToPush );
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
206 次 |
| 最近记录: |