私たちはこのオープンソースプロジェクトを世界中の人々に提供したいと考えています。このチュートリアルの内容をあなたが知っている言語に翻訳するのを手伝ってください。
レッスンに戻る

反復可能(iterable)なキー

重要性: 5

私たちは map.keys() の配列を取得し、その結果を使って処理を続けたいです(マップ自体とは別に)。

が、問題があります。:

let map = new Map(); map.set("name", "John"); let keys = map.keys(); // Error: keys.push is not a function keys.push("more");

なぜでしょう?key.push が機能するためにはコードをどのように直せばよいでしょう?

これは、map.keys() は配列ではなく、反復可能(iterable) を返すためです。

Array.from を使うことで、それを配列に変換できます:

let map = new Map(); map.set("name", "John"); let keys = Array.from(map.keys()); keys.push("more"); alert(keys); // name, more