連想配列 | hash

連想配列

  • 数値の代わりに意味のある文字列をインデックスとする事で各要素を識別しやすくする
  • インデックスをキーと呼ぶ
  • 要素はキーと値で1セットになっている

書き方

var 連想配列名 = {キー1:値1、キー2:値2、キー3:値3、...};
<script>
    var baseballplayer = {
        first: 'oh',
        second: 'shinozuka',
        third: 'nagashima'
    }
</script>

初期化時にシングル(ダブル)クォートで囲むとキーに全角文字も使える

<script>
    var baseballplayer = {
        '一塁 手': 'oh',
        '二塁 手': 'shinozuka',
        '三塁 手': 'nagashima'
    }
</script>

要素の参照

「ドット」または「ブラケット」でキーを指定する。ブラケットを使う場合はキーを変数に入れて扱うことができる。

連想配列名.キー

または

連想配列名['キー']
ドッドを使った要素の参照
<script>
    var baseballplayer = {
        first: 'oh',
        second: 'shinozuka',
        third: 'nagashima'
    }
    console.log(baseballplayer.first); //oh
    console.log(baseballplayer.third); //nagashima
</script>
ブラケットを使った要素の参照
<script>
    var baseballplayer = {
        first: 'oh',
        second: 'shinozuka',
        third: 'nagashima'
    };
    console.log(baseballplayer['first']); //oh
    var key = 'first';
    console.log(baseballplayer[key]); //oh
</script>

要素への代入

  • 配列同様、要素が持つ値を上書きできる
  • 連想配列内に存在しないキーを指定すれば要素を追加できる
<script>
    var baseballplayer = {
        first: 'oh',
        second: 'shinozuka',
        third: 'nagashima'
    };
    baseballplayer.shortstop = 'hirooka';
    console.log(baseballplayer.shortstop); //hirooka

    baseballplayer['center'] = 'shibata';
    console.log(baseballplayer['center']); //shibata
</script>

配列 | Array

配列

  • 変数(データ保存領域)に番号をつけてまとめ、使いやすくしたもの
  • 個々の変数は「配列の要素」という
  • データ保存領域の個数を「配列の長さ」という
  • 各要素を識別するためにインデックスを割り振る
  • 似たようなデータを大量に扱う場合に有効

書き方

var 配列名={値1、値2、値3、...}
インデックスは「0」から始まる

素数がn個の配列の場合、先頭要素を指すインデックスは「0」、最後の要素を指すインデックスは「n-1」

<script>
  var number = [ 10, 20, 30 ];
  console.log(number[1]); //10
</script>

0番目「10」 1番目「20」 2番目「30」

各要素に対して個別に値を代入できる
配列名[インデックス]=値;
<script>
  var number = [ 10, 20, 30 ];
  number[1] = 50;
  console.log(number[1]);  //50
</script>

1番目「20」を上書き

要素を追加できる
  • 配列内に存在しないインデックスを指定
  • インデックスは連続しない番号で良い
<script>
  var number = [ 10, 20, 30 ];
  number[3] = 40;
  number[9] = 100;
</script>

4番目に40、10番目に100を追加した

空配列を作成する

要素に指定する値が未定の場合、器だけを予め作っておき後から要素を追加する

<script>
  var number = [ ];
  number[0] = 10;
  number[1] = 20;
  number[2] = 30;
</script>
配列名.length

配列が保持する要素数を表す。ただしインデックスに欠番がある場合は要素数とは一致しない

<script>
  var number = [ 10, 20, 30 ];
  console.log(number.length); //3
</script>

配列の長さは3で要素数も3

<script>
  var number = [ 10, 20, 30 ];
  number[9] = 100;
console.log(number.length); //10 </script>

配列の長さは10で要素数は4
[10、20、30、欠、欠、欠、欠、欠、欠、9]

二次元配列

配列の集合体を二次元配列という

<script>
  var number = [ [ 10 , 20 , 30 ] , [ 40 , 50 , 60 ] ];
  console.log(number[0][0]); // 10
  console.log(number[0][1]); // 20
  console.log(number[0][2]); // 30
  console.log(number[1][0]); // 40
  console.log(number[1][1]); // 50
  console.log(number[1][2]); // 60
</script>

f:id:fujiwarashinichi:20140327223242g:plain