JavaScript - Map() 增量值

标签 javascript loops dictionary ecmascript-6

我有一张 map ,如下:

let map = new Map();
map.set("a", 1);
//Map is now {'a' => 1}

我想将 a 的值更改为 2,或递增它:map.get("a")++;

目前,我正在使用以下内容:

map.set("a", (map.get("a"))+1);

但是,这感觉不对。有谁知道更清洁的方法吗?可能吗?

最佳答案

你的做法没问题。如果您使用原始值,这就是您需要执行的操作。如果您想避免调用 map.set,则必须恢复为值的引用。换句话说,您需要存储一个对象,而不是一个基元:

let map = new Map();
map.set("a", {val: 1});

然后递增变为:

map.get("a").val++;

关于JavaScript - Map() 增量值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47373372/

相关文章:

javascript - 在不影响 UI 的情况下将外部几何图形加载到 Three.js 中的最佳和最快方法是什么

loops - 为什么这个 IF 语句不需要 End IF

c# - c# 中的字典或列表

python - 退出 tkinter gui,没有错误

c++ - 这种无序 map 的使用是否有效/正确?

python - 我怎样才能使用 Django 做一种不同的事情

javascript - 如何在 React Native 和 Node 中计算校验和?

javascript - 如何防止 AngularJS 在 $resource 操作中对 GET 请求中的参数进行排序?

带有对象的 Javascript 数组

mysql - 为什么这个 PHP 循环每行渲染两次?