totalSum() { var zhi = 0.0 this.jinerlist.forEach((map) => { // 在循环中获取 Map 对象的键 map.forEach((value, key) => { let newVar = map.get(key) zhi = zhi + newVar }) }) return parseInt(zhi) }, 怎么让他清空
时间: 2024-02-14 16:30:01 浏览: 26
要清空`totalSum`方法中的`zhi`变量,你可以在每次调用`totalSum`方法之前将其重新赋值为0。这样在每次计算总和之前都会将`zhi`重置为0,从而实现清空的效果。
以下是修改后的代码示例:
```javascript
totalSum() {
var zhi = 0.0
this.jinerlist.forEach((map) => {
// 在循环中获取 Map 对象的键
map.forEach((value, key) => {
let newVar = map.get(key)
zhi = zhi + newVar
})
})
return parseInt(zhi)
},
clearTotalSum() {
this.zhi = 0.0 // 清空 zhi 变量
}
```
在上述代码中,我添加了一个新的方法`clearTotalSum`来清空`zhi`变量。你可以在需要清空`zhi`变量的地方调用这个方法。
希望这对你有所帮助!如果还有其他问题,请随时提问。
相关问题
let groups = [...new Set(company2.map(item => item.parentCode))]; let newArr = groups.map(parentCode =>{ let children = company2.filter(item => item.parentCode == parentCode); children.forEach(child => { // 获取当前子项的父项 let parent = company2.find(item => item.parentCode === parentCode); // 将父项的companyName赋值给子项 child.parentName = parent.companyName; }); return children; }); this.child = newArr; console.log(this.child); 将获得的数组中的每一项中的companyName提取出来当作该数组的键值
你可以使用reduce方法将获得的数组转换为对象,其中对象的key为每个子项的companyName,value为所有具有该companyName的子项组成的数组,示例代码如下:
```
let childObj = this.child.reduce((acc, item) => {
let companyName = item[0].parentName;
acc[companyName] = item;
return acc;
}, {});
console.log(childObj);
```
这样就可以得到一个以companyName为键值的对象,其中每个键对应的值为具有该companyName的所有子项组成的数组。
computed:{ computedSum(){ //累加计算 checkList每一项的价格*数量 var total=0 this.checkList.forEach(item => { total+=item.price*item.number }); return total } } } Vue.createApp(obj).mount("#box") </script> </body> </html>优化代码
可以将计算总价的方法封装成一个单独的函数,以提高代码的可读性和复用性。
例如:
```
computed: {
computedSum() {
return this.getTotalPrice(this.checkList);
}
},
methods: {
getTotalPrice(list) {
let total = 0;
list.forEach(item => {
total += item.price * item.number;
});
return total;
}
}
```
这样,计算总价的方法就被封装成了一个独立的函数,可以在其他地方复用,也可以更好地维护和修改。