问题描述
我有这张地图:
var map = new Map();
map.set("10/10",0);
map.set("10/11",1);
map.set("10/12",2);
{
"10/10": 0,"10/11": 1,"10/12": 2,}
我想添加这个新的键/值:
"10/9": 0,
如何将所有旧地图元素的值增加为 1?所以我得到以下地图:
{
"10/9": 0,"10/10": 1,"10/11": 2,"10/12": 3,}
解决方法
你可以这样使用:
var map = new Map();
map.set("10/10",0);
map.set("10/11",1);
map.set("10/12",2);
function addNewItem(item,map) {
map.forEach((value,key,map) => {
map.set(key,value + 1);
});
map.set(item,0);
return map;
}
const newMap = addNewItem("10/9",map);
console.log(newMap);
,
您可以根据其值将项目放置在此处的任何位置,并将该值增加到大于或等于指定值。
var map = new Map();
map.set("10/10",2);
function logMapElements(value,map,set_key,set_value) {
if (set_value <= value) {
map.set(key,value+1);
}
}
function setMapElement(set_key,set_value) {
map.forEach((key,value,map) => logMapElements(key,set_value))
map.set(set_key,set_value);
}
setMapElement("10/9",0);
console.log(map.get("10/9"));
console.log(map.get("10/10"));