Cinco métodos de cruce de matriz de JavaScript (transferencia)

Reenviado de : cinco métodos de cruce de matriz de JavaScript

Este artículo presenta principalmente cinco métodos de cruce de matriz de JavaScript para ayudarlo a comprender mejor y aprender a usar JavaScript. Los amigos interesados ​​​​pueden aprender sobre esto.

En el proceso de escribir código en JavaScript, puede usar varios métodos para iterar sobre la matriz, incluidos métodos como for loop, forEach loop, map loop, forIn loop y forOf loop.

1. Bucle for: básico y sencillo

Este es el método más básico y comúnmente utilizado para atravesar una matriz; varios lenguajes de desarrollo generalmente admiten este método.

let arr = ['a','b','c','d','e'];
for (let i = 0, len = arr.length; i < len; i++) {
  console.log(i);    // 0 1 2 3 4
  console.log(arr[i]); //a b c d e
}

Dos, método forEach (): use la función de devolución de llamada

forEach() Este es un método del objeto Array; acepta una función de devolución de llamada como argumento.

Hay tres parámetros en la función de devolución de llamada:

  • 1º: elemento de matriz (obligatorio)
  • 2º: valor de índice del elemento de matriz (opcional)
  • 3º: la propia matriz (opcional)
let arr = ['a','b','c','d','e'];
arr.forEach((item,index,arr)=> {
  console.log(item);  // a b c d e 
  console.log(index); // 0 1 2 3 4
  console.log(arr);  // ['a','b','c','d','e']
})

3. Método map(): use la función de devolución de llamada

Se usa de la misma manera que el método forEach().

var arr = [
  {name:'a',age:'18'},
  {name:'b',age:'19'},
  {name:'c',age:'20'}
];
arr.map(function(item,index) {
  if(item.name == 'b') {
    console.log(index) // 1
  }
})

Cuatro, bucle for..in: atravesar objetos y matrices

El bucle for...in se puede utilizar para recorrer objetos y matrices.
Recomendado para objetos en bucle, y también se puede usar para atravesar json.

let obj = {
  name: '王大锤',
  age: '18',
  weight: '70kg'
}
for(var key in obj) {
  console.log(key);    // name age weight
  console.log(obj[key]); // 王大锤 18 70kg
}
----------------------------
let arr = ['a','b','c','d','e'];
for(var key in arr) {
  console.log(key); // 0 1 2 3 4 返回数组索引
  console.log(arr[key]) // a b c d e
}

Cinco, for...of loop: atravesar objetos y matrices

Matrices y objetos en bucle, recomendados para atravesar matrices.

for...of proporciona tres nuevos métodos:

  • key() es un cruce de nombres de clave;
  • value() es un cruce de valores clave;
  • las entradas () es un cruce de pares clave-valor;
let arr = ['科大讯飞', '政法BG', '前端开发'];
for (let item of arr) { 
 console.log(item); // 科大讯飞 政法BG 前端开发
}
// 输出数组索引
for (let item of arr.keys()) { 
 console.log(item); // 0 1 2
}
// 输出内容和索引
for (let [item, val] of arr.entries()) { 
 console.log(item + ':' + val); // 0:科大讯飞 1:政法BG 2:前端开发
}

6. Suplemento

6.1, romper y continuar problemas

En las funciones forEach, map, filter, reduce, every, some, las palabras clave break y continue no tendrán efecto, porque están en la función, pero la función resuelve el problema de la trampa de cierre.
Para usar pausar y continuar, puede usar for, for...in, for...of, while.

6.2, arreglos y objetos

用于遍历数组元素使用:for(),forEach(),map(),for...of 。
用于循环对象属性使用:for...in。

转自JavaScript 数组遍历的五种方法

Supongo que te gusta

Origin blog.csdn.net/qq_41767116/article/details/129153700
Recomendado
Clasificación