当前位置: 首页 > 知识库问答 >
问题:

javascript - js请教:A数组的某个元素如何更新为B数组的值 ?

毕嘉
2023-06-03

盘点前库存表

[
  {'item':'aaa','model':'9×9×9','stock':'成品仓','qty':100},
  {'item':'bbb','model':'5×5×5','stock':'成品仓','qty':200},
  {'item':'ccc','model':'8×8×8','stock':'成品仓','qty':400}
]

盘点表(含有些空白废数据)

[
  {'item':'aaa','qty':888},
  {'item':'ccc','qty':999},
  {'item':'','qty':},
  {'item':'','qty':},
  {'item':'','qty':}
]

希望得到:正确库存表

[
  {'item':'aaa','model':'9×9×9','stock':'成品仓','qty':888},
  {'item':'ccc','model':'8×8×8','stock':'成品仓','qty':999}
]

共有2个答案

叶健柏
2023-06-03
const preStock = [
  {'item': 'aaa', 'model': '9×9×9', 'stock': '成品仓', 'qty': 100},
  {'item': 'bbb', 'model': '5×5×5', 'stock': '成品仓', 'qty': 200},
  {'item': 'ccc', 'model': '8×8×8', 'stock': '成品仓', 'qty': 400}
];

const checkStock = [
  {'item':'aaa','qty':888},
  {'item':'ccc','qty':999},
  {'item':'','qty':''},
  {'item':'','qty':''},
  {'item':'','qty':''}
];

const preStockObj = {};
preStock.forEach(item => preStockObj[item.item] = item);

checkStock.forEach(item => {
  if (item.item && preStockObj.hasOwnProperty(item.item)) {
    const targetItem = preStockObj[item.item];
    targetItem.qty = item.qty;
  }
});

const result = [];
for (let key in preStockObj) {
  const item = preStockObj[key];
  if (item.qty) {
    result.push(item);
  }
}

console.log(result);
袁俊弼
2023-06-03
function mergeArrays(arr1, arr2) {
    let result = [];
    for (let i = 0; i < arr1.length; i++) {
        for (let j = 0; j < arr2.length; j++) {
            if (arr1[i].item === arr2[j].item && arr2[j].item !== '') {
                result.push(Object.assign({}, arr1[i], arr2[j]));
            }
        }
    }
    return result;
}

let newArray = mergeArrays(arr1, arr2);
console.log(newArray);

image.png

 类似资料:
  • 传入:{ text: "子目录一", id: 880 } 期望输出: 传入:{ text: "根目录", id: 9521 } 期望输出:

  • 本文向大家介绍Javascript删除数组里的某个元素,包括了Javascript删除数组里的某个元素的使用技巧和注意事项,需要的朋友参考一下 删除数组中的某个元素,首先需要确定需要删除元素的索引值。 找到相对应的索引值后,根据索引值删除数组中该元素对应的值 验证下,是否成功 需要将封装为数组原始的方法,以便以后需要使用 当然根据数组的splice()方法:向/从数组中添加/删除项目,然后返回被删

  • 我有一个以下格式的mongodb文档。如何基于父属性_id更新数组中第一个元素的rolename字段。

  • 问题内容: 我需要在数组的开头添加或添加元素。 例如,如果我的数组如下所示: 我的AJAX调用的响应是,我希望更新后的数组如下所示: 目前,我正打算这样做: 有什么更好的方法吗?Javascript是否具有执行此操作的任何内置功能? 我的方法很复杂,看到更好的实现将真的很有趣。 问题答案: 使用。就像一样,除了它在数组的开头而不是结尾添加元素。 // -将元素添加到数组的开头/结尾 // -删除并

  • 如上图片, 每个方块都有一个宽,高,X轴,Y轴; 有可能宽占多份, 高占多份; 但宽度最大就占3份, 高度不限; 每次删除一个格子, 下面的格子自动往左往上补齐; 给到数据假如是: 删除id为5的格子后,希望得到的是:

  • 问题内容: 假设我有以下文件 我想将文档中具有代码“ efg”的所有元素的数量更改为0。我该怎么做?我应该对位置运算符使用循环吗? 问题答案: 最好的方法是匹配数组元素,并 使用 API 使用位置运算符分别进行更新。您真的不应该吹牛。