Javascript 为什么这个forEach()变量无法解析?
我有一些代码:Javascript 为什么这个forEach()变量无法解析?,javascript,Javascript,我有一些代码: 从对象的js数组获取所有id 将这些id的不同列表创建到新变量中 对ID的不同列表执行forEach,以进行逐个处理 当我的代码到达上面的调试器断点时,forEach x值2将显示在监视中,但没有从supplierPricingInfo返回匹配的行(尽管应该有)。但是,如果我将x变量值硬编码为2,则会从supplierPricingInfo返回匹配的行。这很奇怪。我想我以前没见过这样的问题。你知道根本原因是什么吗?我想你的x是搞错了。尝试用id替换外部x,如下所示: distin
forEach
,以进行逐个处理当我的代码到达上面的调试器断点时,forEach x值2将显示在监视中,但没有从supplierPricingInfo返回匹配的行(尽管应该有)。但是,如果我将
x
变量值硬编码为2,则会从supplierPricingInfo返回匹配的行。这很奇怪。我想我以前没见过这样的问题。你知道根本原因是什么吗?我想你的x
是搞错了。尝试用id
替换外部x
,如下所示:
distinctCommodityIds.forEach(id => {
sapCommodityRows = supplierPricingInfo.filter(x => x.CommodityId === id);
debugger;
});
你能检查一下吗,这里我们从array获得唯一的CommodityId
let items = [
{ id: 1, CommodityId: 1, name: 'Alex' },
{ id: 2, CommodityId: 2, name: 'John' },
{ id: 3, CommodityId: 1, name: 'Jane' },
{ id: 4, CommodityId: 3, name: 'Doe' },
{ id: 5, CommodityId: 2, name: 'Peter' }
];
const unique = [...new Set(items.map(item => item.CommodityId))];
console.log(unique)
let items = [
{ id: 1, CommodityId: 1, name: 'Alex' },
{ id: 2, CommodityId: 2, name: 'John' },
{ id: 3, CommodityId: 1, name: 'Jane' },
{ id: 4, CommodityId: 3, name: 'Doe' },
{ id: 5, CommodityId: 2, name: 'Peter' }
];
const unique = [...new Set(items.map(item => item.CommodityId))];
console.log(unique)