Array filter()應(yīng)用實(shí)例

Array filter()

filter 直譯 過濾器 顯然起到的效果是過濾、篩選;
filter() 方法創(chuàng)建一個新的數(shù)組,新數(shù)組中的元素是通過檢查指定數(shù)組中符合條件的所有元素。

注意
  1. filter() 不會對空數(shù)組進(jìn)行檢測。
    2.filter() 不會改變原始數(shù)組.

語法

array.filter(function(currentValue,index,arr), thisValue)

實(shí)例應(yīng)用及參數(shù)分析

基本用法

//定義一個數(shù)組
var ages = [32, 33, 16, 40];
//定義一個函數(shù) 返回大于18的元素
  function checkAdult(age) {
      return age >= 18;
  }
//返回原數(shù)組大于18的元素組成新的數(shù)組
  var newAges = ages.filter(checkAdult);

參數(shù)分析

var ages = [32, 33, 16, 40];
var newAges= ages .filter((item,index,ages) => { 邏輯運(yùn)算  return boolean; },thisVue);
             //item 要檢測的數(shù)組的當(dāng)前元素  好比 遍歷中的一個元素;  必選參數(shù)
            //index 當(dāng)前元素在原數(shù)組中的下標(biāo)索引   可選參數(shù)
            //ages 調(diào)用filter的當(dāng)前數(shù)組,用于作用域的問題,可能需要傳入;  可選參數(shù)
            //return boolean類型的數(shù)組;
            //filter的參數(shù)2 thisVue ; 作用域this 嚴(yán)格模式下filter的回調(diào)函數(shù)中的this = thisVue傳入的值,也是因作用域的問題,選擇性傳入;
            /*官方所說:如果為 `filter` 提供一個 `thisArg` 參數(shù),則它會被作為 `callback` 被調(diào)用時的 `this` 值。
              否則,`callback` 的 `this` 值在非嚴(yán)格模式下將是全局對象,嚴(yán)格模式下為 `undefined`。
            `callback` 函數(shù)最終觀察到的 `this` 值是根據(jù)[通常函數(shù)所看到的 "this"的規(guī)則](https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Operators/this)確定的。
            */

var age = 18;
 var newAges2 = ages .filter((item,index,ages) => {
    return item>this; //這里的this就是filter傳入的參數(shù)2 age;
  },age);
console.log(newAges2 );
//  打印結(jié)果 32/33/40

浪客行1213的簡書


xhh
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 本文包括:1、Filter簡介2、Filter是如何實(shí)現(xiàn)攔截的?3、Filter開發(fā)入門4、Filter的生命周期...
    廖少少閱讀 7,522評論 3 56
  • 學(xué)習(xí)任何編程語言,數(shù)組都是繞不過去的坎,每個編程語言都在其標(biāo)準(zhǔn)庫里面內(nèi)置了功能強(qiáng)大的Array對象。通過參考阮一峰...
    吳少在coding閱讀 884評論 0 3
  • 布隆過濾器 Bloom Filter 布隆過濾器,用來判斷一個元素是否在集合中。它的特點(diǎn)是節(jié)省空間,但是有誤判。有...
    周肅閱讀 4,851評論 0 5
  • 1 構(gòu)造函數(shù) 上面代碼中,Array構(gòu)造函數(shù)的參數(shù)2,表示生成一個兩個成員的數(shù)組,每個位置都是空值。 如果沒有使用...
    徵羽kid閱讀 491評論 0 0
  • 轉(zhuǎn)載文章 angularjs 過濾器(filter)正如其名,作用就是接收一個輸入,通過某個規(guī)則進(jìn)行處理,然后返回...
    飛將軍閱讀 679評論 0 2

友情鏈接更多精彩內(nèi)容