Javascript 如何更改地图上的值?
我想计算匹配汽车和车型的每次总和,但不使用此代码:Javascript 如何更改地图上的值?,javascript,Javascript,我想计算匹配汽车和车型的每次总和,但不使用此代码: function solve(arr) { let map = new Map(); for (let str of arr) { let [car, model, price] = str.split(' | '); if(!map.has(car)){ map.set(car, new Map()); }
function solve(arr) {
let map = new Map();
for (let str of arr) {
let [car, model, price] = str.split(' | ');
if(!map.has(car)){
map.set(car, new Map());
}
if(map.get(car).get(model)){
map.get(car).get(model += Number(price))
}
else{
map.get(car).set(model, Number(price));
}
}
}
solve(['Mini | Clubman | 20000',
'Mini | Clubman | 43434343',
'Mini | Clubman | 1000',
'Mercedes-Benz | 60PS | 3000',
'Hyunday | Elantra GT | 20000',
'Mini | Countryman | 100',
'Mercedes-Benz | W210 | 100',
'Mercedes-Benz | W163 | 200']);
你好像在找
function solve(arr){
const map = new Map();
for (const str of arr) {
const [car, model, price] = str.split(' | ');
if (!map.has(car)) {
map.set(car, new Map());
}
if (!map.get(car).has(model)) {
map.get(car).set(model, 0);
}
map.get(car).set(model, map.get(car).get(model) + Number(price));
}
}
您不能将
+=
与映射
条目一起使用。您能提供一个您输入的数据和预期结果的示例吗?@Jerodev它似乎位于代码示例的底部。格式使它很难看到。修正了格式。.get(model+=Number(price))
毫无意义。你是说.set(model,…get(model)+Number(price))
?很高兴能帮上忙!你可能想