配列について(オブジェクトについて)

Javascriptを習い始めた初学者が最初にぶつかるのが「配列」という言葉ではないでしょうか?
正確にいうと、Javascriptには「配列」と言う概念は無く、すべてオブジェクトになってしまいます。

ただ、最初からオブジェクトの概念で説明し始めますと一気にハードルが上がり、余計に理解できなくなったりしますので、まずは他の言語にある「配列」という概念で説明してみますね。

1.何故配列が必要か?

配列の前に、まず、「変数」は「数字や文字列などを記憶する箱」のようなもので、いろんな処理を行っていく上で、計算結果などを一時的に記憶する時に使われます。
では「配列」とは何かというと、似たような種類の変数を複数纏め、一つのグループとして扱えるようにしたもの、と捉えると解り易いかもしれません。

例えば、「山田」、「田中」、「鈴木」と3人の生徒の名前を、変数を使って記憶した後、画面表示させようとした時、思い浮かぶ方法が次のようなソースコードですよね。

【JSのサンプルコード】

【表示サンプル】

Consoleの表示

Consoleの表示

ところが、3人の時はまだいいですが、これが40人となった時、80行のソースコードを書かなければならなくなりますね。
これはかなり非効率です。

そこで使われるのが「配列」です。

2.まずは「配列」を覚えよう(単純配列)

※Javascriptに「単純配列」という概念はありませんが、便宜的に(説明の為に)そう呼んでいます。

一つ前のソースコードは一人一人の名前に別々の変数を使ってる処に問題があります。
配列」を使いますと、次のように、「names」という1つのグループとして纏める事が可能です。

【JSのサンプルコード】

 

【表示サンプル】

Consoleの表示

Consoleの表示

また、個別の名前を取り出したかったら、次のように「0」から始まる番号でそれぞれの名前を表示させることも可能です。

【JSのサンプルコード】

 

【表示サンプル】

Consoleの表示

Consoleの表示

3.次に「連想配列」を覚えよう

※Javascriptに「連想配列」という概念はありませんが、便宜的に(説明の為に)そう呼んでいます。

今度は、「りんご」という商品名、「単価」と「重さ」を記録し、画面表示をするサンプルコードです。

【JSのサンプルコード】

 

【表示サンプル】

Consoleの表示

Consoleの表示

ただ、このままだと商品を増やす時、変数名が複雑になります。
そこで、「連想配列」を使いますと、1つの変数内に複数の情報を纏める事ができます。

【JSのサンプルコード】

 

【表示サンプル】

Consoleの表示

Consoleの表示

また、複数の商品を記憶したい場合は、最初に説明した「単純配列」の方法を使って次のように記述する事ができます。

【JSのサンプルコード】

【表示サンプル】

Consoleの表示

Consoleの表示

このような配列の事を多重配列とか二重配列と呼びます。
その為、「メロン」の「単価」を表示させたい場合は、上記のように「console.log(fruits[1]['price']);」と記述します。

4.配列データの連続処理

※Javascriptに「配列」という概念はありませんが、便宜的に(説明の為に)そう呼んでいます。

配列内のデータを一つずつ取り出しながら連続で処理したい時は「for (..of..) { }」構文を使うのがとても便利です。
for (..of..) { }」構文は下記のように、配列内のデータを一つずつ取り出しながら変数にセットしてくれます。

【JSのサンプルコード】

 

【表示サンプル】

Consoleの表示

Consoleの表示

JS/JQ

次の記事

関数について