javascript配列とその操作

5562 ワード

本稿では、以下のいくつかの方面の内容を紹介します.
1.行列の作成方法
2.配列の操作(追加、削除、読み込み)
3.行列の共通の方法と属性
どのように配列を作成するかは、一般的に初期化設定によって簡単に3つに分類されます.
1.単純作成配列:
var arr=new Aray();
ポイント:newキーワードで配列オブジェクトのAray()を作成し、Aray()オブジェクトはローカルクラスで、newでオブジェクトを作成してから使用できます.
2.配列を作成しながら配列のサイズを指定します.
var arr=new Aray(10)//ここで初期化サイズ10の配列が作成されます.
注意:配列サイズ操作を使って初期化すると、配列は自動的に大きく支えられ、C言語のようにエラーが発生しません.ダイナミック成長はjs配列の性質です.また、jsで最大配列長さは
4294967295
3.直接初期化:
var arr=new Aray(「love」、「hate」、「pain」)、/ここで直接配列を初期化しました.
またはvar arr=["happy"、""cute"、""scare"、//括弧も配列オブジェクトを宣言することができます.
もちろん、C言語と同様に、2次元3次元と多次元の配列を定義することができる.

<script language="javascript">

    var myArray = new Array();

    for(var i=0;i<10;i++ )...{

        myArray[i]=new Array();

        myArray[i][0]=Math.floor(Math.random()*10);

        myArray[i][1]=Math.floor(Math.random()*10);

        myArray[i][2]=Math.floor(Math.random()*10);

        myArray[i][3]=Math.floor(Math.random()*10);

        myArray[i][4]=Math.floor(Math.random()*10);

        myArray[i][5]=Math.floor(Math.random()*10);

        myArray[i][6]=Math.floor(Math.random()*10);

        myArray[i][7]=Math.floor(Math.random()*10);

        myArray[i][8]=Math.floor(Math.random()*10);

    }

  

    myArray.sort( function(x, y) ...{

        return (x[0]==y[0])?((x[4]==y[4])?(x[8]-y[8]):(x[4]-y[4])):(x[2]-y[2])

    });

    for(var i=0;i<myArray.length;i++ )...{

        document.write(myArray[i].join(",") + "<br/>");

    }

</script>
配列の属性:length
arr.lengthは、配列arrの長さを返します.ループ中の配列への遍歴が一般的です.例えば、

for(var i=0;i<arr.length;i++){

    

}
配列要素のアクセス:arr[index]であり、indexはインデックスである配列基数を表し、0からはarr.lengthの要素を共有しています.例えば、arr[0]は最初の配列要素にアクセスし、arr[1]は第二の配列要素にアクセスします.
次の類推配列の操作方法:以下のこれらの操作配列の一般的な方法(13個)を概観します.
tostring()、valueOf()、toLocal String()、jun()、split()、slice()、concat()
pop()、push()、shift()、unshift()、sort()、splice()
これらの方法の機能と使い方を一つ一つ分析します.
toString()、valueOf()、toLocal String():
機能:配列のすべての要素を返します.
注:配列名は、配列全体を返すこともできます.
コード:

    var m=["am","bm","cm"];//           

    alert(m.toString());//toString()           ,     , am,bm,cm

    alert(m.valueOf());//valueOf()            

    alert(m.toLocaleString());//toLocaleString()            ,        ,    

    alert(m);//               
ジョイン():
機能:配列の各項目をある文字(列)で接続しますが、元の配列は変更されません.
コード:

    var m=["am","bm","cm"];//           

    var n=m.join("---");// ---  am,bm,cm.

    alert(m.toString());//m      ,  am,bm,cm

    alert(n);//n      , am---bm---cm
スプリット():
機能:文字列をある文字列に分割しますが、元の文字列は変更されません.
コード:
    var str=「I love maomao、I am caolvchong」
    var arr=str.split("o")//文字でstr文字列を一つの配列に分割します.
    alert(arr)//出力配列全体
slice():ある位置から始まり(ある位置まで)の配列部分を返します.元の配列は変更されません.
コード:

    var m=["am","bm","cm","dm","em","fm"];

    var n=m.slice(2);//       bm     , cm,dm,em,fm

    var q=m.slice(2,5);//              , cm,dm,em

    alert(n);

    alert(q);
配列オブジェクトのスタック操作:
push():配列の最後に項目を追加します.
pop():配列の最後の項目を削除します.
コード:

    var m=["am","bm","cm","dm","em","fm"];

    m.push("gm");//         gm

    alert(m);

    m.pop();//          gm

    alert(m);
配列オブジェクトのキュー操作:
unshift():配列ヘッドにアイテムを追加します.
shift():配列の最初の項目を削除します.
コード:

    var m=["am","bm","cm","dm","em","fm"];

    m.unshift("gm");//              gm

    alert(m);

    m.shift();//         gm

    alert(m);
sort():配列は文字のASCIIコードで並べ替えられ、配列のオブジェクトを変更します.
注:数字配列でも文字列に変換して比較ソートします.
コード:

    var m=["am","fm","gm","bm","em","dm"];

    m.sort();//      

    alert(m);
concat():配列の最後に要素を追加しますが、配列オブジェクトは変更されません.
コード:

    var m=["am","bm"]

    var n=m.concat("cm");//    cm,         

    alert(m);//        

    alert(n);//       
splice():配列の任意の位置に要素を追加し、削除または置換し、配列オブジェクトを直接変更します.
詳細:
splice()は三つのパラメータまたは三つ以上のパラメータがあり、前の二つが必要で、後のパラメータは任意です.
追加を行います.splice(開始項目、0、追加項目)
削除を行います.splice(最初の項目、削除する項目の個数)
これは削除を追加する共通の結果です.
コード:

    var m=["am","bm"]

    m.splice(1,0,"fm","sm");//        fm sm,  am,fm,sm,bm

    alert(m);

    m.splice(2,1);//         (    sm,  am,fm,bm)

    alert(m);

    m.splice(2,1,"mm");//         (    ,  am,fm,mm)

    alert(m);