本文為大家總結了javascript數組常用方法,具體內容如下
1、join()方法:
Array.join()方法將數組中所以元素都轉化為字符串鏈接在一起,返回最後生成的字符串。也可以指定可選的字符串在生成的字符串中來分隔數組的各個元素。如果不指定分隔符,默認使用逗號。案例如下:
var a=[1,2,3]; a.join();//=> "1,2,3" 因為沒有指定分隔符,默認為逗號。 a.join("+");//=> "1+2+3" 指定分隔符為+ a.join("-");//=> "1-2-3" 指定分隔符為-
Array.join()方法是String.split()方法的逆操作,後者是將字符串分割成若干塊創建一個數組。
2、 reverse()方法:
Array.reverse()方法將數組中元素進行倒敘,返回倒敘的數組,它是在原來數組中進行倒敘,不產生的新數組,返回就是原來的數組,只不過裡面元素已經進行倒敘重排了。案例如下:
var a=[1,2,3]; a.reverse();// =>a=[3,2,1];
3、sort()方法:
Array.sort()方法將數組中的元素排序,並返回排序好的數組。如果不傳參數默認以字母表順序進行排序。案例如下:
var a=[4,3,1,2] a.sort();// =>[1,2,3,4] a.sort(function(a,b){return a-b;});//=>[1,2,3,4] 降序排列 a.sort(function(a,b){return b-a;});//=>[4,3,2,1] 升序排列
這裡使用匿名函數很方便,因為函數只使用一次就沒有必要給函數命名了。
4、concat():
Array.concat()方法創建並返回一個新數組,新數組中的元素包含調用數組的元素和concat()中傳入參數的值,傳入的參數可以是單獨數值,也可以是數組,concat()不會遞歸扁平化數組的數組。案例如下:
var a=[5,6,7]; a.concat(1,2);// =>[5,6,7,1,2]; a.concat([1,2]);// =>[5,6,7,1,2]; a.concat(3,[1,2]);// =>[5,6,7,3,1,2]; a.concat([1,[2,3]]);// =>[5,6,7,1,[2,3]];
5、slice()方法:
Array.slice()方法返回指定數組的一個片段或子數組。裡面可以傳一個參數或兩個參數,參數可以為正也可以為負。案例如下:
var a=[5,6,7,3,1,2]; a.slice(1)// =>[6,7,3,1,2] 數字參數指的是數組的索引,一個參數表示開始的位置,不傳第二個參數默認為數組中元素個數。 a.slice(1,3)// =>[6,7] 第二參數是數組索引結束位置,(不包含) index>=1&&index<3; a.slice(1,-3)// =>[6,7] 當參數中有負數時候,可以進行轉換正數,方法就是-3+6(數組裡元素個數) a.slice(-3,-2)// =>[3] 同理如上。
6、splice()方法:
Array.splice()方法是在數組中插入或刪除的通用方法。它會修改調用的數組,splice()可以傳入三個參數,第一參數表示刪除元素索引開始的地方,第二參數表示刪除元素總數,第三參數,表示插入的元素,元素插入的位置就是刪除元素開始的位置。案例如下:
var a=[5,6,7,3,1,2]; a.splice(2);// =>[7,3,1,2] a=[5,6];//傳入一個參數表示從索引開始刪除之後所有的元素。 a.splice(2,2);// =>[7,3] a=[5,6,1,2];第二個參數表示刪除元素的個數。 a.splice(2,2,'a','b','c'); //=>[7,3] a=[5,6,'a','b','c',1,2];
7、push()和 unshift()方法:
Array.push()方法就是向數組最後面添加元素,它返回的是新數組的長度;Array.unshift()方法就是向數組最前面添加元素,返回的是新數組的長度。案例如下:
var a=[1,2,3]; a.push(4,5);// a=[1,2,3,4,5]; 返回 值為5; a.unshift(4,5);// a=[4,5,1,2,3]; 返回 值為5;☆傳的參數可以一個,也可以多個。
8、pop()和 shift()方法:
Array.pop()方法就是刪除數組中最後一個元素,它返回是刪除的元素;Array.shift()方法是刪除數組最前面的元素,返回是刪除的元素。
var a=[5,6,7]; a.pop();// a=[5,6]; 返回值為 7 a.shift();// a=[6,7]; 返回值 5
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持。