カテゴリー:
mapは、与えられた関数を配列のすべての要素に対して呼び出し、その結果から新しい配列を生成する。
forEachと同じように、今までforを使用していたものを簡単に処理出来るようになった。
基本的な使い方
var numbers = [1, 2, 3];
var doubledNumbers = [];
var doubled = numbers.map(function(number){
return number * 2;
});
変数名 = 配列名.map( 引数 => {
return 引数.map;
});
引数から新しい配列を生成する。
注意点
forEachと大きく違う部分は、return文が必要であるというところ。
returnが無い場合、新たに生成された配列の中身がnullとなるので注意。
利用例
あるオブジェクトにある、特定の値を取得したい場合などに利用
const cars = [
{ type: '軽自動車', price:'やすい'},
{ type: '高級車', price:'高い'}
];
let prices = cars.map(function(car){
return car.price;
});
pluckという関数を作成(引数は配列とオブジェクトの名前を渡す)
return で新しい配列を返す。
下記の関数では、2度returnを使用しているという部分に注意が必要
const paints = [
{color: '赤' },
{color: '青' },
{color: '黄色' }
];
pluck(paints,'color');
function pluck(array, property) {
return array.map(function(arrayItem){
return arrayItem[property];
});
}