配列

配列宣言

var members = ['田中', '鈴木', '佐藤'];

空の配列を作成する場合、下記のどちらでも同じ。

var members = [];

var members = new Array();

要素数を指定して作成。中身はundefinedになっている。

var members = new Array(10);    //10個の要素が出来る

あなぬけで作成。

var members = ['abc', , , 'def']; //members[1]と[2]はundefined

存在しない要素にアクセスするとundefined

var members[2] = ['田中', '鈴木']

console.log(members[5]);  //undefined

存在しない要素に代入すると拡張する。

members[5] = '佐藤';  // ['田中', '鈴木', undefined, undefined, undefined, '佐藤']

lengthプロパティを変更することでも長さを変更できる。
今のlengthより大きい数字を入れれば拡張するし、小さくすれば縮小する。
小さくした時に、はみ出た要素は削除される。
配列を全削除するのにlengthに0を代入する使い方もある。

members.length = 10;

配列の最後に要素を追加

var members = ['田中', '鈴木']

members.push('佐藤');    //'田中' '鈴木' '佐藤'

配列の連結

Array.concat()を使用する。
連結した新しい配列を戻り値で返す。
配列内の要素が参照の場合、新しい配列でも参照をそのまま所持する。
(連結前と連結後で同じ参照を持つ)

var arrayA = ['A', 'B', 'C'];
var arrayB = ['x', 'y', 'z'];

var arrayC = arrayA.concat(arrayB);    // 'A', 'B', 'C', 'x', 'y', 'z'

配列から特定の要素のindex位置を取得

コード
var fruits = [
  'apple',
  'banana',
  'cherry'
];

var index = fruits.indexOf('apple'); → indexは0
var index = fruits.indexOf('banana'); → indexは1
var index = fruits.indexOf('orange'); → 存在しない場合indexは-1

配列から特定の要素を削除する

コード
var fruits = [
  'apple',
  'banana',
  'cherry'
];

var val = 'apple';
var index = fruits.indexOf(val);
fruits.splice(index, 1)
console.log('fruits : ', fruits); → ["banana", "cherry"]
参考 JavaScriptで配列から値指定で要素削除する2つの方法PisukeCode

多次元配列

var members = ['田中', '鈴木', '佐藤', ['東京', '神奈川', '埼玉'] ];

オブジェクトリテラル(連想配列、クラス代わりにも使用)

コード
var member = {
	name:'田中',
	age:15,
	birthplace:'東京',
	'job':'エンジニア'  //キーをクォーテーションで囲ってもいいが囲わないのが推奨
};

新規のプロパティ名に代入する形で、変数宣言後に追加もできる。

コード
var member = {};
member['name'] = '田中';
member['age'] = 15;
member['birthplace'] = '東京';

下記は同じ意味。どちらを使っても良い。

var member = new Object();

var member = {};

ドット演算子を使ったアクセス

console.log(member.name)

プロパティ名を利用(ブラケット構文)

console.log(member['name']);

プロパティ名は変数に代入していても使える

var key = 'name';
console.log(member[key]);

ドット演算子は、数字から始まるプロパティ名を扱えないし、変数を使ったアクセスもできない。

var key = 'name';
console.log(member.key); //これはエラー