1. 程式人生 > >JS中一些常用的陣列方法

JS中一些常用的陣列方法

<!doctype html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport"
          content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Document</title>
</head>
<body>
<script>
    // concat()方法:連線任意多個數組,將他們組成一個新的陣列
    // 這個方法不會改變現有的陣列
    // 語法:arrObj.concat(arr1,arr2,...),括號中的引數可以使多個數組,也可以是多個字元
    var arr1=[2,4,5];
    var arr2=['a','b','c'];
    var arr3=arr1.concat(arr2);
    var arr4=arr1.concat(1,'f',4,'g');
    console.log(arr3); //[2, 4, 5, "a", "b", "c"]
    console.log(arr4); //[2,4,5,1,'f',4,'g']

    //join()方法:將所有的陣列元素放入一個字串,用這個字串將這個陣列進行分割,並返回一個新的字串
    //語法:arrObj.join(分隔符)
    var arr5=arr1.join('aaa');
    console.log(arr5); //2aaa4aaa5

    //pop()方法:刪除並返回陣列的最後一個元素
    //與之用法相同的shift()方法,刪除並返回陣列的第一個元素
    //會改變原陣列,使原陣列長度減一
    //語法:arrObj.pop()
    var arr6=arr1.pop();
    console.log(arr6); //5
    console.log(arr1); //[2,4]

    //push()方法:向陣列的末尾新增任意多個元素並返回新的長度
    //與之用法相同的unshift()方法,是向陣列的開頭新增任意多個元素並返回新的長度
    //會改變原陣列
    //語法:arrObj.push(a1,a2,...)
    var arr7=arr1.push(11,12,13,14);
    console.log(arr7); //6
    console.log(arr1); //[2,4,11,12,13,14]

    //reverse()方法:翻轉陣列中的元素
    //會改變原陣列
    //語法:arrObj.reverse()
    arr1.reverse();
    console.log(arr1); //[14, 13, 12, 11, 4, 2]

    //toString()方法:將陣列轉換為字串並返回結果
    //不改變原陣列
    //語法:arrObj.toString()
    var arr8=['李白','韓信','花木蘭'];
    var arr9 = arr8.toString();
    console.log(arr9); //李白,韓信,花木蘭
    console.log(arr8); //['李白','韓信','花木蘭']

    //sort()方法:對陣列進行排序
    //語法:arrObj.sort()
    var arr9=[20,12,3,55,444];
    var arr10=['Ban','abg','Doger','center'];
    var arr11=['Ban','Abg','Doger','Center'];
    var arr12=['Ban','Abg','Doger','center'];
    console.log(arr9.sort()); //[12, 20, 3, 444, 55]
    console.log(arr10.sort()); //["Ban", "Doger", "abg", "center"]
    console.log(arr11.sort()); //["Abg", "Ban", "Center", "Doger"]
    console.log(arr12.sort()); //["Abg", "Ban", "Doger", "center"]

    //splice()方法:新增或刪除多個元素,然後返回被刪除的元素
    //會改變原陣列
    //語法:arrObj.splice(x,index,Y1,Y2,...)
    //x為要刪除的起始位置(即下標為x開始)是必需的,index為要刪除的項數也是必需的,Y1,Y2...是要新增的元素,可選
    var arrA=['a','b','c','d'];
    var arra = arrA.splice(2,2,3,4,5);
    console.log(arra); //["c", "d"]
    console.log(arrA); //["a", "b", 3, 4, 5]

    //slice()方法:返回選中的某些元素
    //語法:arrObj.slice(x,y)  x是起始位置,必需,y是結束位置,可選,如果沒有y則預設是從起始位置到陣列的末尾
    //不會改變原陣列
    var arrB=['A','B','C','D','E','F','G'];
    var arrb=arrB.slice(3);
    var arrc=arrB.slice(3,5);
    console.log(arrb); //["D", "E", "F","G"]
    console.log(arrc); //["D", "E"]  包括下標為x的但是不包括下標為y的
    console.log(arrB); //["A", "B", "C", "D", "E", "F", "G"]

</script>
</body>
</html>