Uso y diferencia de los métodos de recorrido de matriz de uso común para Cada, filtro, algunos, todos, mapear, buscar, reducir

-forEach es equivalente a for loop

let arr = [1,2,3,4,5]

let a = arr.forEach((val,index)=>{
    
    
    arr[index] +=1
    return index
})
console.log(a)   //undefined
console.log(arr)  // [2, 3, 4, 5, 6]

mapa

let arr = [1,2,3,4,5]

let arr1 = arr.map((val,index)=>{
    
    
    return arr[index] + 1
})
console.log(arr)   //[1,2,3,4,5]
console.log(arr1)  //[2, 3, 4, 5, 6]
  • La diferencia entre map y forEach es que forEach no tiene valor de retorno, incluso si retorna, su valor de retorno solo será indefinido;
  • Todos los valores de retorno del mapa formarán una nueva matriz

algunos

let arr = [1,2,3,4,5]

let some1 = arr.some((val,index)=>{
    
    
    return val==1
})
console.log(some1)  //true

let some2 = arr.some((val,index)=>{
    
    
    return val==6
})
console.log(some2)  //false

encontrar

let arr = [1,2,3,4,5]

let find1 = arr.find((val,index)=>{
    
    
    return val>1
})
console.log(find1)  // 2
  • Lo mismo: find y algunos tienen usos similares, ambos buscan valores calificados en la matriz y dejan de retroceder cuando se encuentra un valor calificado.
  • Diferencia: el valor devuelto por algunos es un booleano, mientras que el valor devuelto por buscar es un valor específico.

filtrar

let arr = [1,2,3,4,5]

let filter1 = arr.filter((val,index)=>{
    
    
    return val>1
})
console.log(filter1)   //[2,3,4,5]
  • Busque los valores "todos" que cumplan las condiciones en la matriz especificada y combínelos en una nueva matriz sin cambiar la matriz original

cada

let arr = [1,2,3,4,5]

let every1 = arr.every((val,index)=>{
    
    
    return val>0
})
console.log(every1)   //true

let every2 = arr.every((val,index)=>{
    
    
    return val>1
})
console.log(every2)    //false
  • Juzgue si "todos" los valores en la matriz cumplen la condición, devuelva verdadero si cumple, de lo contrario, falso

reducir

let arr = [1,2,3,4,5]
let arrString = ["one","two","three","four","five"]
let sum1 = arr.reduce((item,val)=>{
    
    
    return item+val
})
let sum2 = arrString.reduce((item,val)=>{
    
    
    return item+val
})
console.log(sum1)  //15
console.log(sum2)  //onetwothreefourfive

  • Si el elemento de la matriz es un número, se calculará la suma de todos los elementos de la matriz; si el elemento de la matriz es un carácter, todos los caracteres se unirán

Supongo que te gusta

Origin blog.csdn.net/weixin_43956521/article/details/110951957
Recomendado
Clasificación