JavaScriptのforeachで連想配列を扱う方法を現役エンジニアが解説【初心者向け】

初心者向けにJavaScriptのforeachで連想配列を扱う方法について現役エンジニアが解説しています。foreachは配列の各データに対して、同様の処理を繰り返し実行する場合に用いられる、繰り返し文です。連想配列の場合は、配列にキー名を指定してアクセスする点に注意が必要です。

TechAcademyマガジンはオンラインのプログラミングスクールTechAcademy [テックアカデミー]が運営する教育×テクノロジーのWebメディアです。初心者でもすぐ勉強できる記事が2,000以上あります。

JavaScriptのforeachで連想配列を扱う方法について、TechAcademyのメンター(現役エンジニア)が実際のコードを使って初心者向けに解説します。

JavaScriptについてそもそもよく分からないという方は、JavaScriptとは何なのか解説した記事をまずご覧ください。

 

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

 

田島悠介

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

大石ゆかり

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

田島悠介

JavaScriptのforeachで連想配列を扱う方法について詳しく説明していくね!

大石ゆかり

お願いします!

JavaScriptにおいて連想配列は、様々なデータを格納する上で重要な意味を持ちます。また、foreachはその連想配列を扱うために非常に重要です。

そこで本記事では、JavaScriptのforeachで連想配列を扱う方法について現役エンジニアが解説いたします。

連想配列とは

通常の配列においては、インデックスは0から始まる数字が割り振られます。一方連想配列ではインデックスに任意の文字列を措定して配列を扱えます。

定義の仕方としては

var array = { キー名称 : 値 , キー名称 : 値 , キー名称 : 値 , キー名称 : 値 , ・・・ }

のように扱います。

foreachとは

foreachは配列の各データに対して、同様の処理を繰り返し実行する場合に用いられます。簡単に説明するとfor文やwhile文のようなループ処理をするようなものです。foreach文は、配列の要素がある分だけ繰り返し処理するという内容の文です。

[PR] JavaScript・jQueryで挫折しない学習方法を動画で公開中

任意の要素にアクセスする

任意の要素にアクセスするには、キーを指定する必要があります。例えば任意のキーを持つ配列の値を取得するには

array["キー名称"]

とする必要があります。

実際に書いてみよう

では実際に連想配列をforeachで扱ってみようと思います。

<!DOCTYPE html>
<html lang = "ja">
  <head>
    <meta charset = "utf-8">
    <title>JavaScript</title>
  </head>
  <body>
    <script>
      var user = { name:'一郎', age:25, tel:'000-0000-0000' };
      Object.keys(user).forEach(key => console.log(key + ':' + user[key]));
    </script>
  </body>
</html>

JavaScriptのforeachを使って連想配列を展開するサンプルプログラム

 

まとめ

JavaScriptのforeachで連想配列を扱う方法を現役エンジニアが解説しました。

連想配列は個人情報や製品情報など多くのデータ数を扱うプログラムに応用されますので、ぜひエンジニアとして身に付けておきたいところです。

筆者プロフィール

メンターTKさん

大学院でVBAを扱う研究を行い、プログラミングの素晴らしさに目覚める。

その後、建設系企業のシステム担当として従事。JavaScriptやPHP、Processingなどに没頭中。

 

大石ゆかり

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

田島悠介

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

大石ゆかり

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

 

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

また、現役エンジニアから学べる無料体験も実施しているので、ぜひ参加してみてください。