ES5提供的陣列方法

2021-10-03 22:35:54 字數 2878 閱讀 5323

es5為我們提供了很多運算元組的方法,便於我們對陣列進行一些基礎的便攜操作,接下來我們來詳細聊聊es5裡面的那些陣列方法

首先我們自行來封裝乙個陣列函式,首先說明我們使用的引數以及它們所代表的意義(item陣列項內容,index陣列下標,arr陣列)

上**

//定義乙個函式foreach

function

foreach

(arr , fn)

}//定義乙個陣列

var arr =[1

,5,6

,8,7

,3];

//呼叫這個函式,同時將函式作為實參傳入函式foreach中

foreach

(arr ,

function

(item , index , arr )

)

我們首先來分析一下上述**,我們可以看到在封裝函式時,我們在遍歷陣列的操作裡進行了函式的呼叫,這樣的目的是可以隨著i值的變化,對陣列中的每乙個值進行函式對應的操作,在呼叫foreach函式時,我們將乙個匿名函式作為實參傳入foreach函式中,可以把這裡當作是函式fn的具體操作,我們通過在外部控制內部這一設計來實現對陣列每一項的具體操作,其優勢在於,不改變內部函式結構,來控制輸出方式,es5為我們提供的陣列操作的基本原理就是這樣,我們可以通過這個原理自己去封裝一些方法供我們使用。

接下來我們看看具體有es給我們做好的那些方法供我們使用

返回值:undefined;

作用:用於遍歷陣列,**量少

返回值:每次函式執行過後的返回值組成的陣列

作用:具體運算元組中的各項資料

返回值:符合條件的返回值組成的陣列

作用:篩選

返回值:布林值

作用:與邏輯或相似,有滿足條件的即輸出結果為true

返回值:布林值

作用:與邏輯與相似,全部滿足條件的才輸出true

返回值:乙個計算結果

作用:對陣列內的值進行整合運算

(1)傳入乙個值

reduce( 函式 )

只傳入乙個函式的情況下,start會取陣列中的第一項作為自己的值,item就會變成第二項的值,由結果可知,除第一次外,start就為上一次函式的計算結果

(2)傳入兩個值

reduce( 函式 ,start )

由執行結果分析得知,如果提前給start賦值,那麼start在第一次計算時,用的是我們賦給的值,除此之外,start的值都是前一次函式的預算結果。

ES5 陣列方法

foreach 方法從頭至尾遍歷陣列,為每個元素呼叫指定的函式。三個引數 陣列元素 元素的索引和陣列本身。var data 1,2,3,4,5 var sum 0 data.foreach function val sum 15 data.foreach function v,i,a data 2,...

ES5陣列方法

push 從陣列最後一位新增 pop 從陣列最後一位刪除 shift 從陣列第一位刪除 unshift 從陣列第一位新增 reverse 陣列逆轉 splice 從第幾位開始,擷取長度,在切口處新增新的資料 sort 陣列排序 arr.sort function a,b 正序 return b a ...

es5 陣列方法

es5 陣列方法的擴充套件 陣列物件.foreach function item,index 陣列物件.map function item,index 返回乙個加工後的新陣列 陣列物件.filter function item,index 按指定要求過濾,返回結果為true的子陣列 示例 main ...