數組API匯總


Javascript數組API:

1、將數組轉化為字符串:2種:

1、var str=String(str);   

 將數組轉化為字符串並分隔每個元素;  

var arr=[1,2,3];
String(arr)
"1,2,3"
arr//[1, 2, 3]

 注:不改變原數組

2,、var str=arr.join("自定義分隔符"); 
     將數組轉化為字符串,可定義分隔符
     強調:如果join省略"",就等效於String

注:不改變原數組

var arr=[1,2,3];
arr.join('')//"123"

var arr=[1,2,3];
arr.join(' ')//"1 2 3"

var arr=[1,2,3];
arr.join(',')//"1,2,3"
arr//[1, 2, 3]

2、鏈接和獲取子數組:
1、連接:   var newArr=arr1.concat(值1,值2,arr2,...);
    將concat后的內容,和arr1拼接,組成新數組返回
    強調:concat的參數中包含數組,則打散數組,以單個元素拼接  

var arr1=[1,2,3],arr2=[4,5,6]
arr1.concat(1,2)//[1, 2, 3, 1, 2]

var arr1=[1,2,3],arr2=[4,5,6]
arr1.concat(arr2)//[1, 2, 3, 4, 5, 6]

2、獲取子數組:var subArr=arr.slice(starti,endi+1);
     獲得arr中starti位置開始,到endi位置的所有元素組成的新數組
     強調:含頭不含尾
     省略第二個參數:表示從starti一直取到結尾
     可支持負數參數:-n表示倒數第n個元素,相當於length-n   

var arr=[1,2,3,4]

arr.slice(0)//[1, 2, 3, 4]

arr.slice(0,2)//[1, 2]

arr.slice(-3)//[2, 3, 4]

arr.slice(-3,-1)//[2, 3]

arr.slice(0,2)//[1, 2]

arr//[1, 2, 3, 4]

注:不改變原數組

3、刪除,插入,替換:(直接修改原數組
 1、刪除:var deletes=arr.splice(starti,n);
     刪除arr中starti位置開始的n個元素
     返回被刪除的元素組成的臨時新數組

var arr=[1,2,3,4]
arr.splice(0)//[1, 2, 3, 4]

var arr=[1,2,3,4]
arr.splice(-1)//[4]

var arr=[1,2,3,4]
arr.splice(0,3)//[1, 2, 3]
arr//[4]

注:1.支持負數

  2.直接修改原數組


2、插入:arr.splice(starti,0,值1,值2,...);
     在arr中starti位置,插入新值。舊值被向后順移
     強調:

  1.要插入的值,只能以單獨的參數傳入,不支持打散數組參數 

  2.starti表示第i個 不是數組索引

  

var arr=[1,2,3,4]
arr.splice(2,0,22,33)
arr//[1, 2, 22, 33, 3, 4]


3、替換:var deletes=arr.splice(starti,n,值1,值2,...);
     刪除arr中starti位置開始的n個元素,再在starti位置插入新元素
     刪除的元素個數和插入的新元素個數不必相等

 

var arr=[1,2,3,4]
arr.splice(2,2,5,6)
arr//[1, 2, 5, 6]

4、反轉數組元素:arr.reverse();

arr=[1,2,3,4]
arr.reverse()//[4, 3, 2, 1]
arr//[4, 3, 2, 1]

注:直接修改原數組

5、升序排列:arr.sort();   (直接修改原數組)

arr=[1,5,3,2]
arr.sort()//[1, 2, 3, 5]

arr=[1,5,32,2]
arr.sort()//[1, 2, 32, 5]
arr//[1, 2, 32, 5]

注:1.將arr中的元素,以字符串方式升序,如上

  2.sort()支持自定義排序方法(arrayObject.sort(sortby)),這個以后再說啦~


6、結尾出入棧:
1、入棧:arr.push(值)
     將值壓入數組結尾

var arr=[1,2,3,4]
arr2=arr.push(1)//5
//返回新數組的長度
arr//[1, 2, 3, 4, 1]

2、出棧:var last=arr.pop();
    彈出數組最后一個元素

var arr=[1,2,3,4]
arr.pop()//4
//返回彈出的元素
arr//[1,2,3]

注:直接修改原數組

7、開頭出入棧:
1、入棧:arr.unshift(值);
    將值插入數組開頭
2、出棧:var first=arr.shift();
    取出數組第一個元素

var arr=[1,2,3,4]
arr.unshift(22)//5
arr//[22, 1, 2, 3, 4]
var arr=[1,2,3,4] arr.shift()//1 arr//[2, 3, 4]

注:直接修改原數組

總結:

直接修改原數組:

1.arr.splice();

2.arr.reverse();

3.arr.sort(); 

4.arr.push(值);arr.pop();

5.arr.unshift(值);arr.shift();

不修改原數組:

1.String(arr);

2.arr.join("自定義分隔符"); 

3.arr1.concat(值1,值2,arr2,...);

4.arr.slice(starti,endi+1); 


免責聲明!

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



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