忍者ブログ

VB.NET-TIPS などプログラミングについて

VB.NETのTIPS(小技集)を中心に、Javascript、PHP その他のプログラミングについて少し役に立つ情報を発信します。いわゆる個人的な忘備録ですが、みなさんのお役に立てれば幸いです。

JavaScript 配列の作成と初期化について

JavaScript でも当然ですが配列が使えます。VB.NETの配列と似たところがありますので、VB.NETを使っている方は特に問題無く理解ができます。 先ずは、配列の枠だけを宣言してみます。以下のソースでは空の配列を宣言し値を追加しています。
以下の処理で console.log を使用していますが、これによりブラウザのコンソール画面に変数の内容が表示されます。

空の配列を宣言と値の追加

    //空の配列宣言
    var arrNum = new Array();
    //未定義の指標での代入で追加
    arrNum[0] = 100;
    arrNum[1] = 200;
    arrNum[2] = 300;
    console.log(arrNum);    // Array(3) [ 100, 200, 300 ] と表示される

上の例では Array クラスを宣言し生成していますが以下の方法でも同じことが出来ます。
値の追加は配列のメソッド push を使って最後尾に追加しています。

空の配列を宣言と値の追加その2

    //空の配列宣言
    var arrNum = [];
    //配列のpush メソッドで配列の最後尾に追加する
    arrNum.push(100);
    arrNum.push(200);
    arrNum.push(300);
    console.log(arrNum);    // Array(3) [ 100, 200, 300 ] と表示される


そこで、配列の初期化の方法ですが、上記の例の Array の括弧の中に要素をカンマ区切りで行えます。

Arrayでの配列の初期化

    //空の配列宣言
    var arrNum = new Array(100, 200, 300);
    console.log(arrNum);    // Array(3) [ 100, 200, 300 ] と表示される

[] の中にも同様にできます。こちらの方が簡単です。
配列の初期化では要素の指標が0(ゼロ)から振られますので注意が必要です。以下の例では配列の参照を行って合計の計算を行っています。

[]での配列の初期化

    //空の配列宣言
    var arrNum = [100, 200, 300];
    console.log(arrNum);    // Array(3) [ 100, 200, 300 ] と表示される

    //配列の参照例としての合計計算
    var sum = 0;
    for(i = 0; i < arrNum2.length; i++) {
        sum += arrNum2[i];  //指標は[0]から振られている
    }
    console.log(sum);       // 600 と表示される



配列の要素は数値データとは限らず文字列を宣言することもできます。 以下の例は [] で要素が4個の文字列配列の初期化宣言を行っています。

要素が文字列の配列の初期化

    //配列宣言(単純な文字列配列)
    var arrStr = ["aaaa", "bb", "ccccc", "ddd"];
    console.log(arrStr);    // Array(4) [ "aaaa", "bb", "ccccc", "ddd" ] と表示される

    //配列内の文字列連結
    var str = "";
    for(i = 0; i < arrStr.length; i++) {
        str += arrStr[i];
    }
    console.log(str);    // aaaabbcccccddd と表示される


尚、配列の宣言で文字列と数値を混在させたものを宣言することが出来ます。 以下の例がそれですが、 arrMix の中身は混在していることが分かります。 文字列連結において文字列と数値の + 処理では数値が文字列に暗黙の変換が行われるため、結果が文字列になります。

要素が文字列の配列の初期化

    //配列宣言
    var arrMix = ["aaaa", 222, "ccccc", 4444];
    console.log(arrMix);    // Array(4) [ "aaaa", 222, "ccccc", 4444 ] と表示される

    //配列内の文字列連結
    var str = "";
    for(i = 0; i < arrMix.length; i++) {
        str += arrMix[i]; // 数値が文字列に暗黙の変換
    }
    console.log(str);    // aaaa222ccccc4444 と表示される











PR

コメント

コメントを書く