數組的常用方法


1.arr.toString(): 將數組轉換為以逗號分隔的字符串;

2.arr.join(): 也是講數組轉換為字符串,只是join方法接受一個作為分隔符的參數,如果沒有參數,則默認是以逗號分隔;

3.arr.push(): push可以接受任意數量的參數,將參數放在原數組的尾部,該方法返回的是最終數組的長度;

4.arr.unshift(): 用法和push()相同,只是unshift方法是將參數放入原數組的前面,;

5.arr.pop(): 刪除數組的最后一項,返回的是被刪除的元素;

6.arr.shift(): 刪除數組的第一項,返回被刪除的元素;

7.arr.reverse(): 翻轉數組的順序;

8.arr.sort(): 將數組進行排序,但需要注意的是這個方法是按Ascii碼排序,例如:

var arr = [1,3,7,5,14,24];

arr.sort();

console.log(arr);  ==>[1,14,24,3,5,7]

9.arr.slice(): 基於當前數組,創建一個或多個項,他可以接受一個或兩個參數,當參數有一個,他返回的是從參數位置到數組最后的新數組,當參數是兩個,他返回的是從開始到結束的位置,但不包括最后的位置;

var nameArr = ["Tom","Jerry","Alice","Nancy","Candy"];

var newName = nameArr.slice(1);
console.log(newName);   //["Jerry", "Alice", "Nancy", "Candy"];

var newName2 = nameArr.slice(1,4);
console.log(newName2); //["Jerry", "Alice", "Nancy"]

10.arr.splice(): 這個方法可以實現數組的增刪改功能;

(1)刪除:只需要提供兩個參數,要刪除的第一項的位置和要刪除的個數,並返回刪除的元素數組:

var num = [1,2,3,4,5];

var newNum = num.splice(1,2);
console.log(num); //[1,4,5]
console.log(newNum); //[2,3]

(2)插入:提供多個參數,第一個參數是要插入的位置,第二個是0表示刪除0個,后面是要插入的元素,可以是多個,因為刪除0個,所以返回空數組;

var num = [1,2,3,4,5];

var newNum = num.splice(1,0,"Tom","Jerry");
console.log(num); //[1, "Tom", "Jerry", 2, 3, 4, 5]
console.log(newNum); //[]

(3)替換:提供多個參數,第一個參數是要插入的位置,第二個是刪除的個數,后面是要插入的元素,可以是多個,返回刪除的數組;

var num = [1,2,3,4,5];
var newNum = num.splice(1,2,"Tom","Jerry");
console.log(num); //[1, "Tom", "Jerry", 4, 5]
console.log(newNum); //[2,3]

11.arr.indexOf()和arr.lastIndexOf:查詢元素的位置,參數為1個或2個,第一個是要查找的元素,第二是要開始查找的位置(可選的),他返回的是查找到的第一個元素的下標,indexOf()是從頭開始查詢,lastIndexOf()是從末尾開始查詢;

12.arr.every()和arr.some(): 兩個方法都是給數組的每一項運行給定函數,不同的是every()方法是如果該函數對每一項都返回true,那就返回true,some()方法是只要有一項返回yrue,那就返回true:

var num = [1,2,3,4,5];
var result = num.every(function(item){
if(item>2) return true;
});
alert(result);  ==>false

若是把every()換位some(),則彈出true;

13.arr.filter(): 給數組的每一項都運行給定函數,返回結果為true的元素組成的數組:

var num = [1,2,3,4,5];
var result = num.filter(function(item){
if(item>2) return true;
});
alert(result); //[3,4,5]


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM