1. 程式人生 > >js中對陣列的定義及操作

js中對陣列的定義及操作

1、陣列的定義

定義陣列有兩種常用的方式:1、字面量定義陣列,2、使用new關鍵字定義陣列

1、字面量定義陣列如下:

<script>
    var arr = (1,2,3,[4,5,6],{}); //其中陣列元素可以是number,string,object
    console.log(arr);//在控制檯輸出陣列
</script>

2、使用new關鍵字定義陣列如下:

<script>
var arr = new Array[1,2,3,[4,5,6],{}];
console.log(arr);

3、注意事項:

使用new定義陣列時,如果定義為:var arr = new Array(n);則表示定義的是陣列長度為n的陣列,如果為空值,則表示定義了一個空陣列。

2、陣列的操作

對陣列常見的操作有:新增陣列元素,刪除陣列元素,修改陣列元素,遍歷陣列元素

1、新增陣列元素如下:

方法1:


<script>
    var arr = [1,2,3,4,"A"];
    arr[5] = "M"; //如果為陣列元素賦值的索引i大於陣列長度,則新增陣列元素後的陣列長度為 i+1
    console.log(arr);
</script>

方法2:使用push()方法;

<script>
    var arr = [1,2,3,4,"A"];
    arr.push("BB","cc"
);//在陣列元素的後面新增,可以追加多個元素, console.log(arr);
</script>

方法3:使用unshift()方法;

<script>
    var arr = [1,2,3,4,"A"];
    arr.unshift("BB","cc");//在陣列元素的前面新增,可以追加多個元素,
    console.log(arr);
</script>

2、刪除陣列元素:

方法1:使用pop()方法,刪除最後一個數組元素;

<script>
    var arr = ["A", "B", "C"
, "D"]; arr.pop(); //刪除最後一個元素,沒有引數,每次只能刪除一個 console.log(arr);
</script>

方法2:使用shift()方法,刪除第一個元素

<script>
    var arr = ["A", "B", "C", "D"];
    arr.shift(); //刪除第一個陣列元素,沒有引數,每次只能刪除一個
    console.log(arr);
 </script>

3、修改陣列

 <script>
    var arr = ["A", "B", "C", "D"];
    arr[2] = "E";
    console.log(arr);
 </script>

4、遍歷一維陣列

<script>
    var arr = ["A", "B", "C", "D"];
    console.log(arr.length);
    for(var i = 0; i<arr.length;i++){
        console.log(arr[i]);
    }
</script>

5、遍歷二維陣列

   <script>
        var arr = [
            [1, 2, 3],
            [4, 5, 6],
            [7, 8, 9]
        ]
        for(var i = 0;i<arr.length;i++){ //先遍歷arr
            for(var j = 0;j<arr[i].length;j++){ //遍歷arr元素中的陣列元素
                console.log(arr[i][j]);
            }
        }
    </script>

3、陣列中常見的方法

1、join():將陣列中的元素,使用某種符號連線起來,形成一個字串

 <script>
    var arr = ["A","B","C","D"]
    var a = arr.join("*")
    console.log( a);
    var a = arr.join("+")
    console.log( a);
    var a = arr.join("-")
    console.log( a);
    var a = arr.join("/")
    console.log(a);
    console.log(typeof a);
</script>

2、reverse():將陣列中的元素倒置順序;

  <script>
      var arr = ["A","B","C","D"]
      var a = arr.reverse();  //倒置陣列順序
      for(var i = 0; i< arr.length; i++) //遍歷陣列
      {
        console.log(a[i]);
      }      
    </script>

3、concat() :將多個數組拼接成一個數組,其中的多維陣列是不會展開的

 <script>
     var arr = ["A","B","C","D"];
     var arr1 = ["A","B","C","D"];
     var arr2 = ["A","B","C","D"];
     var arr3 = ["A","B","C","D" ,[1,2,3]];
     var a = arr.concat(arr1,arr2,arr3) //concat將多個數組拼接成一個數組,其中的多維陣列是不會展開的 
     console.log(a);
     console.log(typeof a)  
    </script>

4、sort():將陣列中的元素按照ASCII從小到大排序

 <script>
       var arr = ["d","AbC","AaC","D",1,8,6];
       var a = arr.sort(); //sort是單個字元比較 例如AbD和AaC 先比較第一個字母,在比較第二個字母,第二個字母那個小就排在前面,之後就不比較後面的字母大小了
       console.log(a);
    </script>

5、slice():擷取陣列中的元素;

   <script>
         var arr = ["A","B","C","D"];
         var a = arr.slice(1,3); //擷取的元素包括開始擷取的元素,但是不包括最後擷取的元素
         console.log(a);
         var a = arr.slice(1); //只寫一個則表示擷取到最後一個元素
         console.log(a);
    </script>

6、toString():將陣列轉換成字串型別

<script>
      var arr = ["A","B","C","D"];
      var a = arr.toString();
      console.log(a);
      console.log(typeof a);    
 </script>

有不對的地方歡迎批評指正