🍇

Mapオブジェクトについて(Typescript)

2023/07/11に公開

Typescriptで、Mapオブジェクトがあまり理解できていなかったので、自分の頭の整理のため記録。

Mapオブジェクトとは?

キーと値のペアを好きなだけ保存するデータ構造。
オブジェクトは、基本プロパティ名は文字列です。
例えば

const obj = {
  foo: "Hello!",
  bar: 12345,
}

これがMapオブジェクトになると、プリミティブもオブジェクトもキーに用いることができます。

では、Mapオブジェクトを作成して行きます。
Mapを使用する場合、まず型を指定してMapオブジェクトを作成します。(Typescriptは型指定が必要になので、型指定しないとany型になります.....)

const map: Map<string, number> = new Map();

Mapは2つの型引数を取る型なので、Map<string, number>はキーが文字列型、そのキーに対応する値が数字型のMapオブジェクトということを意味します。

Setメソッド

Mapオブジェクトが作成できたら、setメソッドを使ってデータを追加してみます。

map.set("one", 1);
map.set("two", 2);

Getメソッド

上記で追加したデータを取得します。

console.log(map.get("one"));//1 と表示。
console.log(map.get("two"));//2 と表示。
console.log(map.get("foo"));//undefined と表示される。

他にもhas, delete, clearのメソッドもありますが、今回は主要なメソッドとしてset, getを重点して書いてます。

【参考】
『プロを目指す人のためのTypeScript入門 安全なコードの書き方から高度な型の使い方まで (Software Design plus)』鈴木 僚太 (著) 技術評論社 2022/4/22出版

Discussion