使用方法:ary.push(增長的項)數組
var ary=[1,2,3];
var res=ary.push(6);==>4
console.log(ary);===>[1,2,3,6]
複製代碼
使用方法:ary.unshift(增長的項)bash
var ary=[1,2,3];
var res=ary.unshift(6);==>4
console.log(ary);===>[6,1,2,3]
複製代碼
使用方法:ary.shift()函數
var ary=[1,2,3,4,5];
var res=ary.shift();
console.log(ary);
console.log(res);//==>1
複製代碼
使用方法:ary.pop()post
var ary=[1,2,3,4,5];
var res=ary.pop();
console.log(ary);
console.log(res);//==>5
複製代碼
使用方法:ary.splice(n,m,x)ui
var ary=[1,2,3,4,5];
console.log(ary.splice(0,2,6,8));
console.log(ary) ==>[6,8,3,4,5];
複製代碼
【刪除】 返回值是一個數組,裏面是刪除項spa
var ary=[1,2,3,4,5];
console.log(ary.splice(0,1));
console.log(ary) ==>[2,3,4,5];
複製代碼
【新增】 ary.splice(n,0,x);在索引n的前面添加了x項;3d
var ary=[1,2,3,4,5];
console.log(ary.splice(0,0,8));
console.log(ary) ==>[8,1,2,3,4,5];
複製代碼
【修改】 用x替代刪除的m便可code
使用方法:ary.slice(n,m)cdn
var ary=[1,2,3,4,5];
var res=ary.slice(1,3);==>[2,3]
複製代碼
ary.slice(0): m不寫是查找至末尾,至關於數組克隆,參數0能夠不寫blog
思考:1.若是n/m爲負數會怎樣,若是n>m會怎樣,若是是小數會怎樣,若是是非有效數字會怎樣,若是m或者n的值比最大索引大會怎樣?
參數 | 描述 |
---|---|
start | 要抽取的片段的起始下標。若是是負數,則該參數規定的是從字符串的尾部開始算起的位置。也就是說,-1 指字符串的最後一個字符,-2 指倒數第二個字符,以此類推。 |
end | 緊接着要抽取的片斷的結尾的下標。若未指定此參數,則要提取的子串包括 start 到原字符串結尾的字符串。若是該參數是負數,那麼它規定的是從字符串的尾部開始算起的位置。 |
let ary = [1,8,7,3,6,4]
ary.slice(1.3,4.2);//==> [8, 7, 3]
ary.slice(1.6,4.9);//==>[8, 7, 3]
ary.slice(1,4);//==>[8, 7, 3]
複製代碼
let ary = [1,8,7,3,6,4]
undefined
ary.slice("sss","sss");//==> []
ary.slice("1","3");//==> [8, 7]
ary.slice(false,true);//==> [1]
ary.slice([],[4]);//==>[1, 8, 7, 3]
ary.slice({},{a:b});//==>Uncaught ReferenceError: b is not defined
ary.slice(NaN,2);//==> [1, 8]
複製代碼
ary.slice(8,3);//==> []
ary.slice(1,8);//==>[8, 7, 3, 6, 4]
複製代碼
使用方法:ary.concat(拼接的內容)
let ary1=[10,20,30];
let ary2=[40,50,60];
let res=ary1.concat("培訓",ary2);
console.log(res);//==>[10,20,30,"培訓",40,50,60]
複製代碼
使用方法:ary.toString()
let ary = [10,20,30];
let res = ary.toString();
console.log(res);//==>"10,20,30"
console.log([].toString());//==>""
console.log([12].toString());//==>"12"
複製代碼
使用方法:ary.join(‘指定分割符’)
var ary=[1,2,3]
var res=ary.join("-");===>"1-2-3"
複製代碼
使用方法:ary.indexOf(檢索的項);
let ary = [10,20,30,10,20,30];
console.log(ary.indexOf(20));//==>1
複製代碼
if(ary.indexOf("培訓")===-1){//不包含}
也能夠直接使用ES6新提供的includes方法判斷(不兼容)
if(ary.includes("培訓")){//包含:若是存在返回的是TRUE}
複製代碼
使用方法:ary.includes(檢索的項)
var ary=[1,2,3]
ary.includes(1);===>true
複製代碼
使用方法:ary.reverse()
var ary=[1,2,3,4,5];
var res=ary.reverse();==>[5,4,3,2,1];
console.log(res,ary);===>[5,4,3,2,1];
複製代碼
使用方法:ary.sort():SORT方法中若是不傳遞參數,是沒法處理10以上數字排序的(它默認按照每一項第一個字符來排,不是咱們想要的效果)
【升序】
var ary=[11,12,1,2,3];
ary.sort(function(a,b){
return a-b;
});
複製代碼
【降序】
var ary=[11,12,1,2,3];
ary.sort(function(a,b){
return b-a;
});
複製代碼
使用方法:ary.forEach(function(item,index){ alert(item);})
var ary=[2,1,3,5,6,7,8,2];
var res=ary.forEach(function(item,index){
alert(item);
})
console,log(res)
複製代碼
ary.forEach((item,index)=>{
//數組中有多少項,函數就會被默認執行多少次
//每一次執行函數:item是數組中當前要操做的這一項,index是當前項的索引
console.log('索引:'+index+'內容:'+item);
})
複製代碼
for(let i = 0;i<ary.length;i++){
//i:當前循環這一項的索引
//ary[i]:根據索引獲取循環的一項
console.log('索引:'+i+'內容:'+ary[i]);
}
複製代碼
使用方法:ary.map(function(item,index){ return "真棒";})
var ary=[2,1,3,4]
var res=ary.map(function(item,index){
return "你真棒"
})
["你真棒","你真棒","你真棒","你真棒"]
複製代碼
另一些方法後續補充......