您好,登錄后才能下訂單哦!
這篇文章主要講解了“es6 filter方法的參數(shù)是什么”,文中的講解內(nèi)容簡單清晰,易于學(xué)習(xí)與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學(xué)習(xí)“es6 filter方法的參數(shù)是什么”吧!
filter方法接受兩個參數(shù):1、一個回調(diào)函數(shù),不可省略,用于設(shè)置條件來過濾數(shù)組元素,并返回數(shù)組中滿足條件的元素,語法“function(當(dāng)前值,當(dāng)前索引,數(shù)組對象){...}”;2、一個可選參數(shù),可在回調(diào)函數(shù)中為其用this關(guān)鍵字的對象。
本教程操作環(huán)境:windows7系統(tǒng)、ECMAScript 6版、Dell G3電腦。
filter() 方法創(chuàng)建一個新的數(shù)組,新數(shù)組中的元素是通過檢查指定數(shù)組中符合條件的所有元素。
簡單來講: filter() 方法可以返回數(shù)組中滿足指定條件的元素。
filter() 方法接受兩個參數(shù):
array.filter(callbackfn[, thisArg]);
callbackfn:回調(diào)函數(shù),不可省略,用于設(shè)置條件來過濾數(shù)組元素,最多接受3個參數(shù),語法:
function(currentValue, index,arr)
對于數(shù)組中的每個元素,filter 方法都會調(diào)用 callbackfn 函數(shù)一次。
currentValue 必須。當(dāng)前元素的值
index 可選。當(dāng)前元素的索引值
arr 可選。當(dāng)前元素屬于的數(shù)組對象
thisArg:可選參數(shù),可在 callbackfn 函數(shù)中為其用 this 關(guān)鍵字的對象。如果省略 thisArg,則 undefined 將用作 this 值。
返回值是一個包含回調(diào)函數(shù)為其返回 true 的所有值得新數(shù)組。如果回調(diào)函數(shù)為 array 的所有元素返回 false,則新數(shù)組的長度為 0。
對于數(shù)組中的每個元素,filter 方法都會調(diào)用 callbackfn 函數(shù)一次(采用升序索引順序)。不為數(shù)組中缺少的元素調(diào)用該回調(diào)函數(shù)。回調(diào)函數(shù)的用法與 map 相同。
除了數(shù)組對象之外,filter 方法可由具有 length 屬性,且具有已按數(shù)字編制索引的屬性名的任何對象使用。
示例1:篩選出數(shù)組中的素數(shù)
var a = [31,33,35,37,39,41,43,45,57,49,51,53]; var a1 = a.filter(function(value, index, ar) { high = Math.floor(Math.sqrt(value)) + 1; for (var div = 2; div <= high; div ++) { if (value % div == 0) { return false; } } return true; } ); console.log(a1);//31,37,41,43,53 </script>
示例2:過濾掉數(shù)組中在指定范圍外的元素
var f = function (value) { if (typeof value !== 'number'){ return false; } else { return value >= this.min && value <= this.max; } } var a = [6, 12, "15", 16, "the", -12]; var obj = {min : 10, max : 20}; var r = a.filter(f, obj); console.log(r); //12,16
感謝各位的閱讀,以上就是“es6 filter方法的參數(shù)是什么”的內(nèi)容了,經(jīng)過本文的學(xué)習(xí)后,相信大家對es6 filter方法的參數(shù)是什么這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關(guān)知識點的文章,歡迎關(guān)注!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。