统计同名数据基于html js

发布时间 2023-05-29 21:57:18作者: 超安全

# 1.教程

1将数据逐行复制到excell
2.新建txt文件,将excell中的全部数据复制到txt文件中
3.使用edge打开统计同名数据.html,右击网页打开控制台
4.选择txt文件,确认,会在控制台展示结果
点击

# 2.数据示例

可以有空格,回车,形式为:

名称 数量

```
DN150球铁平插 9
DN150*90°球铁双平弯头 11
DN150*50球铁双平短管 9
DN150阀门 2

DN150伸缩节 2
DN150止回阀 1

DN150*100球铁双平大小头 2
DN100*90°球铁双平弯头 33
DN150止回阀 1
```

 

# 3.代码

```html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<input type="file" name="file" id="file" />

</body>
<script>
document.getElementById('file').onchange = function(){
var file = this.files[0];
var reader = new FileReader();
reader.onload = function(progressEvent){
var fileContentArray = this.result.split(/\r\n|\n/);
var datas=[];
for(var n = 0; n < fileContentArray.length; n++){
var line=fileContentArray[n];
var item={
name:"",
num:0
}
if(line!=='\t'&&line.length>0){
var it=line.split(/\t/);
item.name=it[0];item.num= +it[1];
datas.push(item)
}
}
var dict = {};
for(var n=0;n<datas.length;n++){
dict[datas[n].name]=0;
}
for(var n=0;n<datas.length;n++){
dict[datas[n].name]+=datas[n].num;
}
var result="";
for (var key in dict) {
result+=key+"\t" +dict[key]+'\n'
//   console.log(key+"\t" +dict[key])

}
console.log(result)
};
reader.readAsText(file);
};
</script>
</html>
```