我正在开发一个在线工具来在有组织的仪表板界面中显示信息。我从 CSV 电子表格中提取数据,并根据整个 CSV 数据数组中的一个字段将它们分成另一个多维数组。
这是我尝试过的:
// arr is the array that holds the entire CSV data
// inds is where I need the entries separated by industry (arr[i][0])
var indx = 0; // using to add new array to inds array
for(var i = 1; i < arr.length-1; i++){
if(arr[i][0] === arr[i-1][0]) {
if(! inds[indx] ) {
inds[indx] = []
} else {
inds[indx].push(arr[i]);
}
} else {
indx++;
}
}
基本上这是做什么
的:如果行业字段与之前的条目相同,则将其放入索引为 的 arr 数组中indx
,否则indx
为下一个行业添加一个。
这个解决方案的问题:
它跳过了行业的第一个条目,因为之前的行是不同的行业,所以arr[i-1][0]
检查最后一个行业并跳过下一个行业的第一行。
我怎样才能重新格式化这个脚本:
我在想可能嵌套了/while,但不确定。我思考逻辑的方式是:
对于 csv 的每一行,而行业列是相同的,折腾到各自的inds[index]
. 或者,从 arr 中提取具有相同值的行arr[i][0]
。
我确信有一个更简单的解决方案,这就是我在这里的原因,所以我希望我能清楚地表达我的想法,我感谢任何和所有反馈。
如果您需要更多说明,请在评论中告诉我。