es6和es5的陣列方法(9.9)

林9九發表於2020-12-20

es6和es5的陣列方法

陣列方法Array

1.unshift ()在陣列頭部增加一項
2.shift()在陣列頭部刪除一項
3.push()在陣列尾部增加一項
4.pop()在陣列尾部刪除一項
5.reverse()將陣列倒敘
6.sort()將陣列排序
7.splice(item,1)刪除陣列或替換陣列元素
8.concat()建立副本,然後將引數新增到這個副本陣列的末尾
9.join()陣列變為字串。字串通過指定的分隔符進行分隔。
10.toString()把陣列轉換為(逗號分隔)的字串
11.slice(start,end)用於擷取一段陣列中的成員
12.fill(item,start,end)使用一個固定值來替換陣列中的元素fill()方法還有三個可選引數,表示填充的元素起始位置和結束位置
13.copyWithin(target,start,end) 方法用於從陣列的指定位置拷貝元素到陣列的另一個指定位置中。

javaScript改變原陣列的方法

unshift(), shift() 頭增 頭刪
push(), pop() 尾增 尾刪
reverse(), sort(), splice() 反轉排序增添換
fill(), copyWithin() ES6新增

ES5陣列方法(2009)

indexOf()
在陣列中搜尋元素值
返回其位置——下標 or -1

arr.indexOf(item,start)

說明:indexOf方法比較時使用的是全等判定

lastIndexOf()
與 Array.indexOf() 類似,但是從陣列結尾開始搜尋

Array.lastIndexOf(item, start)
.
item:必需,要檢索的專案;
start:可選,從哪裡開始搜尋。(負值將從結尾開始的給定位置開始,並搜尋到開頭)

forEach()
遍歷陣列,為每個陣列元素呼叫一次函式(回撥函式)

Array.forEach(function(item,index,array){})
.
item:遍歷到的元素;
index:遍歷到的下標;
array:陣列本身

用於迴圈 引數是一個函式 該函式會執行arr.length次 無返回值
reduce()
計算陣列元素相加後的總和:

  var arr = [10, 20, 30, 40, 50];
   var res = arr.reduce(function(total, value, index, array){
   	console.log(total + "," + value);  //10,20/30.30/60,40/100,50
   	 return total + value;
   });
   console.log(res);   //150

total:總數(初始值/先前返回的值);
value:專案值;
index:專案索引;
array:陣列本身

reduceRight()

reduceRight() 方法的功能和 reduce() 功能是一樣的,不同的是 reduceRight() 從陣列的末尾向前將陣列中的陣列項做累加。

map()

arr.map(function(item,value,array){})
.
item:陣列成員;
index:索引;
array:陣列本身

用於迴圈執行arr.length次(遍歷—操作—返回),返回值是一個新陣列 陣列長度與原陣列保持一致 陣列的成員是引數函式的返回值
map() 不會對空陣列進行檢測。

filter()

Array.filter(function(item,index,array){})
.
接收一個函式作為引數:item:成員;index:索引;array:陣列本身;

該函式返回一個條件表示式 返回值是符合引數函式條件表示式的成員組成的陣列

some() 方法用於檢測陣列中的元素是否滿足指定條件
every() 方法用於檢測陣列所有元素是否都符合指定條件(通過函式提供)。

相關文章