ES6 常用的新數組語法及用法, map和filter比較常用

一.every(value --當前索引的值, index --索引 )
依據判斷條件,數組的元素是否全滿足,若滿足則返回ture,有一個不滿足就返回false

let arr =[2,3,4,5,6,7]
let arr1 = arr.every( (value)=>value<8) // 返回true
let arr2 = arr.every( (value)=>value<7) // 返回false

二.some(value --當前索引的值, index --索引 )
依據判斷條件,數組的元素是否有一個滿足,若有一個滿足則返回ture,全都不滿足就返回false

let arr =[2,3,4,5,6,7]
let arr1 = arr.some( (value)=>value>7) // 返回false
let arr2 = arr.some( (value)=>value<7) // 返回true

三.filter(value --當前索引的值, index --索引 )
過濾數組,返回一個滿足要求的數組

let arr =[2,3,4,5,6,7]
let newarr = arr.filter( (item)=> item<5)
// 結果 newarr  [2,3,4]
// 把一串小寫字符數組改寫大寫字符數組
const lowerStr = ['a', 'b', 'c']
const upperStr = []
lowerStr.forEach((i) => {
   upperStr.push(i.toUpperCase())
})

四.find
找到第一個符合條件的數組成員

let arr =[2,3,4,5,6,7]
let newarr = arr.find( (item)=>item>3)  // 結果 newarr   [4]

五.findIndex
找到第一個符合條件的數組成員的索引值

let arr =[2,3,4,5,6,7]
let newarr = arr.findIndex( (item)=>item>5)  // 結果 newarr   [4]

六.forEach(value --當前索引的值,index --索引,array --原數組)
遍歷數組,無return,對提供執行的函數,總是返回undefined

let arr =[2,3,4,5,6,7]
let newarr = arr.forEach( (item,index,arr)=>{  }

七.includes

判斷數中是否包含給定的值

let arr =[2,3,4,5,6,7]
let newarr = arr.includes(2) // 返回true
let newarr = arr.includes(10)  // 返回false

八.map
遍歷數組,返回一個新數組

let arr =[2,3,4,5,6,7]
let newarr = arr.map( (item)=>item*2)   // 結果 newarr    [4,6,8,10,12,14]

九.reduce
累加器,數組中的每個值(從左到右)合併,最終計算爲一個值,可用作購物車中計算,下面示例

.reduce( (pre,item)=>{
     return  item.price * item.count + pre
 },0)
 // 0是pre的值,通常定爲0,必須寫

也可用作數組去重

let arr =[2,3,4,5,6,7,7,2]
let newarr = arr.reduce( (pre,item) =>{
  if(!pre.includes(item)){
    return pre.concat(item)    //concat用於連接兩個或多個數組
  }else{
    return pre
},[])

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章