JavaScript 數組-Array的方法總結

JavaScript中的Array類型是常常用到的,Array類型也提供了不少方法能實現咱們需求,下面咱們來總結一下數組

1、建立Array的方法函數

  一、使用Array構造函數spa

    var colors=new Array();code

    var colors=new Array(3);//建立一個長度爲3的數組blog

    var colors=new Array("red","blue")//建立一個數組["red","blue"]ip

    固然,上面的new能夠省略不寫,如 var colors=Array("red");字符串

  二、直接使用數組字面量it

    var colors=["red","blue","green"];io

2、Array的方法1console

  var colors=["red","blue","green"];

  一、獲取數組的長度 colors.length;//3

  二、訪問數組第二項colors[1];//blue

  三、更改數據的第二項colors[1]="black";//["red","black","green"]

  四、檢查是不是一個數組 colors instanceof Array;//true

  五、colors.toString();//默認會以逗號隔開輸出字符串  red,blue,green

  六、colors.join("|");//自定義以「|」隔開輸出字符串 red|blue|green

  七、colors.push("brown")//往數組的尾部添加一項

  八、colors.pop()//往數組的尾部刪除一項

  九、colors.shift()//刪除數組的第一項,並取得該值

  十、colors.unshift("k1","k2")//往數組的前面插入這兩項;["k1","k2","red","blue","green"];

  十一、colors.reverse()//翻轉數組的順序

  十二、colors.sort()或者colors.sort([func]);

  1三、concat() 返回一個新數組,不影響原數組 colors.concat()或者colors.concat("k1");

  1四、slice(begin,end)從數組下標begin開始到end複製這個數據,不包括下標end,若是是slice(begin)那麼就是從下標begin開始到數組的尾部

  1五、splice

    splice(0,2)//從下標0開始刪除數組的兩項

    splice(2,0,"k1","k2")從下標2開始刪除0項,緊接着從這裏插入兩項

    splice(2,1,"k1")//從下標2開始刪除一項,緊接着從這裏插入一項

  1六、indexOf("item")//從數組頭開始查找某項,找到後返回下標值,找不到返回-1

  1七、lastIndexOf("item")//從數組尾開始查找某項,找到後返回下標值,找不到返回-1

3、Array方法2:迭代方法(ECMAScript5)

  一、every():對數組的每一項運行給定的函數,每一項都返回true,則返回true(不影響原數組)

var numbers=[1,2,3,2,1];
//判斷是否每一個數字都大於2
var flag=numbers.every(function (item,index,array) {
    return item>2;
});

  二、filter():對數組中每一項運行給定的函數,返回該函數爲true的項(不影響原數組)

var numbers=[1,2,3,2,1];
//返回大於2的項
var array=numbers.filter(function (item,index,array) {
    return item>2;
});

  三、forEach():對數組中的每一項執行給定的函數,不返回值 (不影響原數組)

var numbers=[1,2,3,2,1];
//輸出每一項的平方
numbers.forEach(function (item,index,array) {
    console.log(item*2);
});

  四、map():對數組的每一項執行給定的函數,返回每次函數調用後結果組成的數組(不影響原數組)

var numbers=[1,2,3,2,1];
//返回每一項的平方
var array=numbers.map(function (item,index,array) {
    return item*item;
});

  五、some():對數組的每一項執行給定的函數,若是有一項返回true則,則返回true

var numbers=[1,2,3,2,1];
var flag=numbers.some(function (item,index,array) {
    return item>2
});

3、Array方法3:歸併方法(ECMAScript5)

  一、reduce()方法從數組的第一行開始,逐個遍歷到最後

  二、reduceRight()方法從數組的最後一項開始,逐個向前遍歷

var numbers=[1,2,3,4,5];
var result=numbers.reduce(function (prev,cur,index,array) {
    //prev:前一個運算的結果,剛開始時候爲數字的第一項
    //cur:數組的當前項
    //index:當前數組的下標
    //array:執行這個運算的數組,當前爲numbers
    console.log("prev:"+prev);
    console.log("cur:"+cur);
    console.log("index:"+index);
    console.log("array:"+array);
    console.log("=============");
    return prev+cur;
});
相關文章
相關標籤/搜索