Javascript 基于其他多个值在数组中添加值,然后重新分组
我有以下数据:Javascript 基于其他多个值在数组中添加值,然后重新分组,javascript,arrays,Javascript,Arrays,我有以下数据: var data = [ [1, "San Miguel National Central High School", "School", 1], [1, "San Miguel Central Elementary School", "School", 2], [2, "Medrano's Rice Mill and Warehouse", "Warehouse", 3], [1, "Unknown", "Residential", 341], [2, "U
var data = [
[1, "San Miguel National Central High School", "School", 1],
[1, "San Miguel Central Elementary School", "School", 2],
[2, "Medrano's Rice Mill and Warehouse", "Warehouse", 3],
[1, "Unknown", "Residential", 341],
[2, "Unknown", "Residential", 532],
[3, "Unknown", "Residential", 257],
[2, "Unknown", "Gas Station", 1]
];
预期输出应如下所示:
var data = [
["School", 3,0,0],
["Warehouse", 0,3,0],
["Residential", 341, 532, 257],
["Gas Station", 0,1,0]
];
对于其代表性
- 数据[i][0]-->级别
- 资料[i][1]-->建筑物名称
- 数据[i][2]-->建筑类型
- 数据[i][3]-->计数
var输入=[
[1,“圣米格尔国家中央高中”,“学校”,1],
[1,“圣米格尔中心小学”,“学校”,2],
[2,“Medrano的碾米厂和仓库”,“仓库”,3],
[1,“未知”、“住宅”,341],
[2,“未知”,“住宅”,532],
[3,“未知”、“住宅”,257],
[2,“未知”,“加油站”,1]
];
var输出=[];
函数init(){
var指数={};
for(让输入的构建){
如果(!index.hasOwnProperty(建筑[2])){
索引[building[2]]=output.length;
push([building[2],0,0,0]);
}
输出[索引[建筑物[2]][建筑物[0]+=建筑物[3];
}
控制台日志(输出);
}
document.addEventListener(“DOMContentLoaded”,init,false)代码>第一步是编写一些代码