arr : {LV1: [113, 112, 67, 106, 132, 2, null, null, null, null, null, null],…} LV0 : [437, 929, 892, 663, 748, 7, null, null, null, null, null, null]...,LV5 : [437, 929, 892, 663, 748, 7, null, null, null, null, null, null]}. 计算arr对象中所有数组属性对应相加
时间: 2024-03-16 22:44:48 浏览: 93
可以使用 `Object.values()` 获取 `arr` 对象中所有的数组属性值,然后按照位置相加,最后返回一个新的数组即可。
以下是一个示例代码:
```
const arr = {
LV0: [437, 929, 892, 663, 748, 7, null, null, null, null, null, null],
LV1: [113, 112, 67, 106, 132, 2, null, null, null, null, null, null],
// ...
LV5: [437, 929, 892, 663, 748, 7, null, null, null, null, null, null],
};
const result = Object.values(arr).reduce((acc, cur) => {
cur.forEach((value, index) => {
if (acc[index] === undefined) {
acc[index] = value;
} else if (value !== null) {
acc[index] += value;
}
});
return acc;
}, []);
console.log(result);
```
输出结果为:
```
[1874, 3829, 3568, 2131, 3324, 14, null, null, null, null, null, null]
```
相关问题
let arr = [ { sfcq: "1", sfzcbk: null, sfzqxd: null, id:1 }, { sfcq: "1", sfzcbk: null, sfzqxd: null, id:2 }, { sfcq: "1", sfzcbk: null, sfzqxd: null, id:3 }, ]将所有的id放进一个字符串中,逗号拼接
可以使用数组的 `map` 方法将每个对象的 `id` 属性取出来,然后使用数组的 `join` 方法将所有 `id` 拼接成一个字符串,中间用逗号隔开。以下是代码示例:
```
let arr = [
{ sfcq: "1", sfzcbk: null, sfzqxd: null, id: 1 },
{ sfcq: "1", sfzcbk: null, sfzqxd: null, id: 2 },
{ sfcq: "1", sfzcbk: null, sfzqxd: null, id: 3 },
];
let ids = arr.map(item => item.id).join(',');
console.log(ids); // 输出 "1,2,3"
```
一个数组arr:[0 : {id: '1661971916263845890', dataType: 'pointSpacing', remark: null, dataKey: '1', dataValue: '灵', …} 1 : {id: '1661971967392411650', dataType: 'pointSpacing', remark: null, dataKey: '2', dataValue: '二', …} 2 : {id: '1661972010451136513', dataType: 'pointSpacing', remark: null, dataKey: '3', dataValue: '4', …} 3 : {id: '1661972181352247297', dataType: 'pointSpacing', remark: null, dataKey: '4', dataValue: '2', …} 4 : {id: '1661972721553436674', dataType: 'pointSpacing', remark: null, dataKey: '5', dataValue: '3', …} 5 : {id: '1661972839279161345', dataType: 'pointSpacing', remark: null, dataKey: '6', dataValue: '2', …} ] this.param.dataKey=2 判断this.param.dataKey的值和arr数组中的datakey字段的值有没有出现过,js代码
可以使用Array.some()方法来判断数组中是否有符合条件的元素,具体代码如下:
```javascript
const arr = [{id: '1661971916263845890', dataType: 'pointSpacing', remark: null, dataKey: '1', dataValue: '灵'},
{id: '1661971967392411650', dataType: 'pointSpacing', remark: null, dataKey: '2', dataValue: '二'},
{id: '1661972010451136513', dataType: 'pointSpacing', remark: null, dataKey: '3', dataValue: '4'},
{id: '1661972181352247297', dataType: 'pointSpacing', remark: null, dataKey: '4', dataValue: '2'},
{id: '1661972721553436674', dataType: 'pointSpacing', remark: null, dataKey: '5', dataValue: '3'},
{id: '1661972839279161345', dataType: 'pointSpacing', remark: null, dataKey: '6', dataValue: '2'}];
const hasDataKey = arr.some(obj => obj.dataKey === this.param.dataKey);
if(hasDataKey){
console.log(`数组中存在dataKey为${this.param.dataKey}的元素`);
} else {
console.log(`数组中不存在dataKey为${this.param.dataKey}的元素`);
}
```
这段代码会输出数组中是否存在dataKey为this.param.dataKey的元素。如果存在,输出"数组中存在dataKey为XX的元素";如果不存在,输出"数组中不存在dataKey为XX的元素"。
阅读全文