JS - ES6 filter() 篩選


 
* filter 不會改變原數組,不會對空數組進行檢查

篩選符合條件項 
  var arr = ['10','12','23','44','42']   var newArr = arr.filter( (val) => val>30 )   console.log(newArr); // ["44", "42"]

 

去掉數組非真值( undefined, null, false, ' ', 0 )
  var arr = [ '1', ' ', undefined, 2, null, '', 3, false, 0, true ];   var newArr = arr.filter( (val)=> val )   console.log(newArr); // ["1", " ", 2, 3, true]   // 空字符串不包含空格

 

數組去重

  var arr = [ 1, 2, 3, 4, 1, 1, 2, 2, 3, 3, 4, 4, "a", "b", "c", "a", "b", "b" ];   var newArr = arr.filter( (val, index, arr) => arr.indexOf(val) === index );   console.log(newArr); // [1, 2, 3, 4, "a", "b", "c"]

 

根據數組對象中某個值進行查找

  var arr = [     { id:1, name:"abc", val:"aaa" },     { id:2, name:"asd", val:"bbb" },     { id:3, name:"qwe", val:"ccc" },   ]   var newArr = arr.filter( (val) => val.id === 1 );   console.log(newArr); // [{id: 1, name: "abc", val: "aaa"}]

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM