JavaScriptにおけるmap()の使い方とindex番号について現役エンジニアが解説【初心者向け】

初心者向けにJavaScriptにおけるmap()の使い方とindex番号について現役エンジニアが解説しています。map()とは配列の全てのデータに処理を行って新しい配列を作成する関数です。index番号とは配列の要素の番号のことです。map()の書き方や使い方について解説します。

TechAcademyマガジンは受講者数No.1のオンラインプログラミングスクールTechAcademy [テックアカデミー]が運営。初心者向けに解説した記事を公開中。現役エンジニアの方はこちらをご覧ください。

JavaScriptにおけるmap()の使い方とindex番号について、TechAcademyのメンター(現役エンジニア)が実際のコードを使って初心者向けに解説します。

そもそもJavaScriptについてよく分からないという方は、JavaScriptとは何なのかについて解説した記事を読むとさらに理解が深まります。

 

なお本記事は、TechAcademyのオンラインブートキャンプJavaScript/jQuery講座の内容をもとにしています。

 

田島悠介

今回は、JavaScriptに関する内容だね!

大石ゆかり

どういう内容でしょうか?

田島悠介

JavaScriptにおけるmap()の使い方とindex番号について詳しく説明していくね!

大石ゆかり

お願いします!

 

目次

 

map()とは

JavaScriptに標準で組み込まれている配列データを扱うArrayオブジェクトが持つメソッドです。mapメソッドを使うと、配列の全てのデータに処理をおこなって新しい配列を作ることができます。

forなどのループ処理を使ってmapと同様の処理を作成することはできますが、mapメソッドを使うことで簡潔なソースコードにすることができます。

[PR] フロントエンドで挫折しない学習方法を動画で公開中

index番号とは

indexは配列の0から始まる要素の番号のことです。

配列の1つ目の要素はindex(インデックス)が0となり、2つ目は1、3つ目は2という具合に増えます。配列の値を扱うときは、配列に[ (ブラケット)で囲ったindexを記述します。

下記の例は配列の1番目(indexが0)の値を扱う場合の記述です。

【配列】[0]

 

map()を利用してリストデータからindex番号を取得してみよう

まずはmapメソッドの引数と戻り値を確認します。mapの引数は1つだけで、値を処理する関数を渡します。この関数は、3つの引数を取ることができます。

配列の値
配列のindex
mapを実行している配列

戻り値は、引数で渡した関数によって、それぞれの値が処理された新しい配列です。それでは、上記を踏まえて配列のindexを取得する例を紹介します。

let array = ['あ', 'い', 'う', 'え', 'お'];

array.map( (value, index) => {
          console.log('【' + value + '】のindexは' + index + 'です')
          });

mapメソッドにアロー関数で引数を2つ、valueとindexという名前でとるようにしています。1つ目の引数のvalueには配列の値が入り、2つ目の引数のindexにはインデックス番号が入ります。

実行結果は下記のようにコンソールに出力されます。

【あ】のindexは0です
【い】のindexは1です
【う】のindexは2です
【え】のindexは3です
【お】のindexは4です

以上がmapメソッドに渡す関数がindexを取る例の紹介でした。実際にmapメソッドを使う場合は、mapメソッドの戻り値が重要です。

簡易的ではありますが、実際に配列の値に処理をして使う例を1つ紹介します。下記のような商品の値段が入っている配列を、priceArrayという変数に格納しました。

let priceArray = [20, 100, 40, 120, 50];

ここで、値段を全て10円下げたい場合、mapメソッドなら下記のような記述になります。

let salePriceArray = priceArray.map( value => value - 10);

これで、salePriceArrayという変数に、[10, 90, 30, 110, 40]という10引かれた配列が格納されました。

まとめ

配列を扱うArrayオブジェクトのmapメソッドを紹介しました。楽に全ての値に処理を加えることができます。

筆者プロフィール

横山茂雄(よこやましげお)

フリーエンジニアとして活動中。サーバーサイドからフロントまで時代の波に合わせてスキルを変化させてきました。

言語、フレームワーク、DB、現場、いずれも転々としながら、筋トレも欠かさない体育会系エンジニアです。TechAcademyジュニアのゲームアプリコースを担当しています。

 

大石ゆかり

内容分かりやすくて良かったです!

田島悠介

ゆかりちゃんも分からないことがあったら質問してね!

大石ゆかり

分かりました。ありがとうございます!

 

TechAcademyでは、初心者でもJavaScript・jQueryを使ったWebサービス公開を習得できるオンラインブートキャンプJavaScript/jQuery講座を開催しています。

挫折しない学習方法を知れる説明動画や、現役エンジニアとのビデオ通話とチャットサポート、学習用カリキュラムを体験できる無料体験も実施しているので、ぜひ参加してみてください。