我有一个处理2D数组的for循环:
var len = result.DATA.length;
for (i = 0; i < len; i++) {
thickness = result.DATA[i][2];
finish = result.DATA[i][1];
colorName = result.DATA[i][0];
color = '<div class="colorName"> + colorName + </div>
}
我有不同的颜色饰面,所以对于ex:Finish:Matte,我有3种颜色,对于皮革,我有5.我想在循环中运行循环,所以我可以通过完成颜色分组。不确定最好的方法是什么。任何帮助将不胜感激。
所以基本上,它应该显示如下:
答案 0 :(得分:0)
我可能会创建一个具有不同饰面的对象,并循环遍历对象属性以创建输出。
let out = {};
let data = [["red","matte"],["blue","leather"],["orange","leather"],["green","matte"],["yellow","leather"]];
let list = document.getElementById("list");
for (let i = 0; i < data.length; i++) {
let finish = data[i][1];
let colorName = data[i][0];
if (!out[finish])
out[finish] = [];
out[finish].push(colorName);
}
for(let prop in out) {
let html = prop + ": ";
html += out[prop].join(", ") + "<br/>";
list.innerHTML += html;
}
<div id="list"></div>