數組方法

Javascript數組經常使用方法彙總!javascript

1.join()

做用:將數組中的全部元素轉換爲字符串java

var arr1 = ['green', 'blue', 'pink'];
arr1.join();     // green,blue,pink
arr1.join('-');  // green-blue-pink
arr1.join('&');  // green&blue&pink
複製代碼

2.reverse()

做用:顛倒數組數組

特色:ui

  • 改變原來的數組,返回一個新數組
var arr = ['pink', 'red', 'blue'];
 arr.reverse();
 console.log(arr);  // ['blue', 'red', 'pink']
複製代碼

3.sort()

做用:數組排序spa

特色:code

  • 改變原來的數組,返回一個新數組
var arr = [2, 6, 9, 5, 8, 7];
arr.sort();
console.log(arr);  // [2, 5, 6, 7, 8, 9]
複製代碼
// 數組排序(冒泡排序)
var arr1 = [13, 4, 77, 1, 7];
arr1.sort(function(a, b) {
     // return a - b; 升序的順序排列
     return b - a; // 降序的順序排列
});
console.log(arr1); // [1, 4, 7, 13, 77]
複製代碼

注意:若是數組包含undefined元素,它們會被排到數組的尾部排序

4.concat()

做用:數組添加元素索引

特色:ip

  • 原數組不會發生改變,返回一個新數組
var arr = [2, 6, 9];
arr.concat(3,1);     // [2, 6, 9, 3, 1]
arr;                // [2, 6, 9]
複製代碼

5.slice()

做用:返回指定數組的一個片斷或子數組字符串

參數說明:

  • 若只有一個參數X,則從X開始到結尾全部數組元素
  • 如有兩個參數X,Y,則從X位置開始到Y位置結束
  • 若參數出現負數,好比:-1表示最後一個,以此類推

特色:

  • 該方法不會改變原始數組,返回一個新數組
var a=[1, 2, 3, 4, 5];
a.slice(0,3);   // [1, 2, 3]
a.slice(3);     // [4, 5]
a.slice(1,-1);  // [2, 3, 4]
a.slice(-3,-2); // [3]
複製代碼

6.splice()

做用:刪除數組中的元素

參數說明:

  • 若只有一個參數X,則表示刪除從X位置開始到結尾全部元素
  • 如有兩個參數X,Y,則表示刪除從X位置開始計數,要刪除的個數Y的元素
  • 若出現第三個或者三個以上的參數,則表示要插入數組中的元素,從第一個參數指定的位置開始插入

==特別注意==:

  • 該方法返回值是刪除元素造成的數組
  • 原始數組會發生改變
// 一個參數
var arr =[1, 2, 3, 4, 5, 6, 7, 8];
console.log(arr.splice(3));     // [4, 5, 6, 7, 8]
console.log(arr);       // [1, 2, 3]
複製代碼
// 兩個參數
var arr =[1, 2, 3, 4, 5, 6, 7, 8];
console.log(arr.splice(2,5));   // [3, 4, 5, 6, 7]
console.log(arr);          // [1, 2, 8]
複製代碼
// 多個參數
var arr =[1, 2, 3, 4, 5, 6, 7, 8];
console.log(arr.splice(3, 2,'a', 'b'));     // [4, 5]
console.log(arr);           // [1, 2, 3, "a", "b", 6, 7, 8]
複製代碼

7.push()和pop()

做用:push()在數組末尾添加一個元素或多個元素,pop()刪除數組最後一個元素

注意:

  • push()返回值是數組新的長度,原數組會發生改變
  • pop()返回值是刪除的那個元素,原數組會發生改變
// push()
var arr = [6, 7, 8, 9];
console.log(arr.push(2));   // 5
console.log(arr);           // [6, 7, 8, 9, 2]
複製代碼
// pop()
var arr = [6, 7, 8, 9];
console.log(arr.pop());   // 9
console.log(arr);         // [6, 7, 8,]
複製代碼

8.unshift()和shift()

做用:unshift()在數組頭部添加一個元素或多個元素,shift()刪除數組第一個元素

注意:

  • unshift()返回值是數組新的長度,原數組會發生改變
  • shift()返回值是刪除的那個元素,原數組會發生改變
// unshift()
var arr = [5, 6, 7, 8];
console.log(arr.unshift(3));   // 5
console.log(arr);              // [3, 5, 6, 7, 8,]
複製代碼
// shift()
var arr = [5, 6, 7, 8];
console.log(arr.shift());      // 5
console.log(arr);              // [6, 7, 8,]
複製代碼

9.indexOf()

做用:從頭到尾查找數組中的元素

返回值:返回找到的第一個元素的索引,若沒有找到就返回-1

var arr = ['a', 'd', 'f', 'e'];
console.log(arr.indexOf('f'));  // 2
console.log(arr.indexOf('h'));  // -1
複製代碼
相關文章
相關標籤/搜索