どうも、ちょげ(@chogetarou)です。
連想配列の全てのキーを取得する方法を紹介します。
方法

連想配列の全てのキーを取得する方法は、ObjectとMapで異なります。
Objectの場合
Objectの連想配列の全てのキーを取得するには、Object.keys()を使います。
まず、Object.keys()を呼び出します。
そいて、Object.keys()の引数に連想配列を指定します。
const keys = Object.keys(dictionary);
上記のObject.keys()は、引数に指定したObjectの連想配列の全てのキーを配列として取得します。
使用例
const numbers = { "one": 1, "two": 2, "three": 3, "four": 4, "five": 5 };
const keys = Object.keys(numbers);
console.log(keys);
出力:
[ 'one', 'two', 'three', 'four', 'five' ]
Mapの場合
Mapの連想配列の場合は、keys()を使います。
具体的には、map.keys
()のように、Mapの連想配列からkeys()を呼び出します。
const keys = map.keys();
上記のkeys()は、呼び出したMapの連想配列の全てのキーをイテレーターとして取得します。
Mapの全てのキーを配列として取得したい場合は、Array.from()もしくはスプレッド構文を使います。
const keys = Array.from(map.keys());
const keys2 = [...map.keys()];
使用例
const numbers = new Map([[ "one", 1], ["two", 2], ["three", 3], ["four", 4], ["five", 5 ]]);
const keys = numbers.keys()
const keys2 = [...numbers.keys()];
const keys3 = Array.from(numbers.keys());
console.log(keys);
console.log(keys2);
console.log(keys3);
出力:
[Map Iterator] { 'one', 'two', 'three', 'four', 'five' }
[ 'one', 'two', 'three', 'four', 'five' ]
[ 'one', 'two', 'three', 'four', 'five' ]
まとめ
連想配列の全てのキーを取得する方法は、ObjectとMapで違います。
- Objectの場合
const keys = Object.keys(dictionary);
- Mapの場合
const keys = map.keys();
コメント