本記事では、JavaScriptのMapオブジェクトに値を設定・取得する方法について解説しています。
JavaScriptの学習におすすめ参考書
改訂3版JavaScript本格入門 ~モダンスタイルによる基礎から現場での応用まで
先輩くん
10万部突破したJavaScriptの本が大幅増補改訂し7年ぶりに発売されたよ!
後輩ちゃん
最新の基本文法から、開発に欠かせない応用トピックまで学ぶことが出来るよ!
綺麗なコードが書けるようになる!
リーダブルコード-より良いコードを書くためのシンプルで実践的なテクニック
先輩くん
より良いコードを書きたい人におすすめの本だよ!
後輩ちゃん
10以上前の書籍ですが、内容は今でも役に立つものばかりです!
Mapオブジェクトに値を設定する方法
Mapオブジェクトに値を設定するには、setメソッドを使用します。基本的な使い方は以下のとおりです。
let map = new Map();
map.set(key, value);
構文解説
- map:新しく生成されたマップオブジェクト
- key:キーとなる値を指定
- value:キーに紐づける値を指定
実際に、setメソッドを使用してMapオブジェクトに値を設定してみましょう。
let map = new Map();
map.set(1, "one").set(2, "two").set(3, "three");
console.log(map); // => Map(3) {1 => 'one', 2 => 'two', 3 => 'three'}
setメソッドは、戻り値に自分自身(Mapオブジェクト)を返すので複数セットする時はメソッドチェーンを使うことが出来ます。
Mapオブジェクトの値を取得する方法
Mapオブジェクトの値を取得するには、getメソッドを使用します。基本的な使い方は以下のとおりです。
let map = new Map();
map.get(key);
構文解説
- map:新しく生成されたマップオブジェクト
- key:取得したい値に紐づいているキーを指定
実際に、getメソッドを使用してMapオブジェクトの値を取得してみましょう。
let map = new Map([
[1, "one"],
[2, "two"],
[3, "three"],
]);
console.log(map.get(1)); // => one
console.log(map.get(2)); // => two
console.log(map.get(3)); // => three
Mapオブジェクトの値を全て取得する方法
forEachメソッド
Mapオブジェクトでは、forEachメソッドを使用することが出来るのでforEachメソッドを使用してMapオブジェクトの値を全て取得するサンプルコードを紹介します。
let map = new Map([
[1, "one"],
[2, "two"],
[3, "three"],
]);
map.forEach((v) => {
console.log(v); // => one two three
});
コールバック関数の第一引数(v)に値が渡されます。
valuesメソッド
valuesメソッドとfor…of文を組み合わせて、Mapオブジェクトの値を全て取得することも可能です。
let map = new Map([
[1, "one"],
[2, "two"],
[3, "three"],
]);
for (let v of map.values()) {
console.log(v); // => one two three
}
仮引数のvにMapオブジェクトの値が1つずつ代入されます。