私は現在このコードを持っています。ここで、speciesMapはキーにマップを値として持つマップです。Mapオブジェクトの値を簡単に増やす方法はありますか?
var speciesMap = new Map();
...
if(!speciesMap.get(species)) {
let obj = new Map();
obj.set('count', 0);
obj.set('vol', 0);
speciesMap.set(species, obj);
}
私は1によって与えられた種の数を増やすことをお勧めしますが、私はそれを行うために見つけた唯一の方法は、このようなものでした。
speciesMap.get(species).set('count', speciesMap.get(species).get('count') + 1);
地図をもう一度ダウンして値を取得するのではなく、値を増やす方法がありますか?同じボリュームになる、私はオブジェクトを下に移動し、それに+ vol
を追加する必要があります。
は明らかに動作しません
speciesMap.get(species).set('count', this+1);
のようなものを望んでいました。
あなたは可変数のクラスを導入し、代わりに裸の数字で、そのクラスのインスタンスを使用することができますBergiの答え@
なり? – Bergi
以前はjavascriptで動的キーを使用していなかったので、この機能を使いこなしていましたが、拒否されました。しかし、 'obj'はオブジェクトにすることができます。コードから 'get()'を削除します。 – hitsugan
はい、ちょうど 'specialMap.get(species).count ++;' :-) – Bergi