JavaScript-动态数组和循环
JavaScript - Dynamic Array and Looping
假设您有一个产品页面。在这个页面上有两个带选项的选择输入。
有一个是尺寸和颜色的。这可能会根据产品而变化,例如窗帘可能有尺寸、长度和颜色(三个选择菜单)。
阵列是动态创建的(基于每个选择菜单及其选项):
var dynamicArr = [],
i,
j,
opt,
$('.select');
for (i = 0; i < select.length; i += 1) {
opt = select.eq(i).find('option');
if (dynamicArr[i] === undefined) {
dynamicArr[i] = [];
}
for (j = 0; j < opt.length; j += 1) {
dynamicArr[i].push(opt.eq(j));
}
}
想象一下,页面有一个大小和颜色下拉列表。上面会创建这样一个数组:
dynamicArr = [['size'], ['color']]
我想分别循环浏览其中的每一个(以便获得单独的值并进行比较)。
我的问题从这里开始。动态数组的长度可能为1、2、3、4、5、6(取决于页面上的选择选项)。因此,我不能这样做,因为不会总是有两个选择
for (i = 0; i < dynamicArr[0].length; i += 1) {
}
for (i = 0; i < dynamicArr[1].length; i += 1) {
}
我该如何找到长度并像上面那样单独循环,例如,如果有三个选择,它会自动知道有这么多,并像上面一样循环。
如果你仍然感到困惑,请告诉我。
谢谢。
您可以始终使用Array.forEach
dynamicArr.forEach(function(el){
console.log(el);
});
我希望我没有误解你的意思,但这里有一个解决方案:
for(i = 0; i < dynamicArr.length; i++) {
for(j = 0; j < dynamicArr[i].length; j++) {
// do something here..
}
}
您应该尝试以下操作:
dyn.forEach(function(el){//dyn is the dynamic array
console.log(el); //logs to console
});
相关文章:
- 如何将angularjs中的javascript字符串输出为循环数组
- 如何从某个位置顺时针和逆时针循环数组
- 赢得't循环数组javascript
- 通过循环数组内容
- 使用RegExp循环数组而不是for循环(Javascript)
- 如何在背景图像的循环数组中预加载图像
- 如何在循环数组内部推送变量值
- Javascript循环数组无限不起作用
- 如何循环数组
- 如何使用Handlebars循环数组对象和模板
- PHP同时循环数组数据显示到javascript中
- 如何使用上一个/下一个功能循环数组中的图像
- 如何循环数组并保持它们之间的索引增长
- Javascript循环数组以查找可被3整除的数字
- 以变量作为属性的循环数组
- 嵌套的“for”循环 - 数组未定义
- 在具有主干和车把的模型中循环数组
- 数组在 for 循环与第二个 for 循环数组 JavaScript 合并
- 对于javascript和jquery的循环数组问题
- 在循环数组 javascript 后替换对象属性值中的字符串