January 2017
Intermediate to advanced
452 pages
5h 53m
Japanese
ES2015ではマップ(Mapオブジェクト)とセット(Setオブジェクト)という2つの新しいデータ構造が導入されました。マップはオブジェクトと似ており、キーと値の対応関係(マップ†1)を作るものです。セットは配列とよく似ていますが、要素の重複は許されません。
[†1] 数学的な意味のマップ(写像。英語ではmappingあるいはmap)は、2つの集合があるときに、一方の各要素に対し他方のただひとつの要素を結びつける対応のことを言います。
ES2015より前のプログラムでは、キーと値の間の対応関係が必要な場合、オブジェクトを利用していました。オブジェクトを使えば文字列のキーを任意の値に対応づけられます。しかしこの目的にオブジェクトを使うのはいくつか問題があります。
Mapオブジェクトには上のような問題はありません。キーと値の対応づけをするのに(たとえキーがオブジェクトと同様に文字列であっても)マップのほうが優れています。
例として「ユーザーを表すオブジェクト」から「役割(role)」へのマップを考えてみましょう。まず、4人のユーザーを表すオブジェクトを定義します。
example/ch10/ex10-01-1/main.js list0
const u1 = { name: '和洋' }; const u2 = { name: '花子' }; const u3 = ...Read now
Unlock full access