En es6, puede usar el método from() del objeto Array para convertir el objeto en una matriz. Este método puede convertir un objeto similar a una matriz o un objeto transitable en una matriz real. La sintaxis es "Array.from(object; )".
El entorno operativo de este tutorial: sistema Windows 7, ECMAScript versión 6, computadora Dell G3.
En es6, puede utilizar el método from() del objeto Array para convertir el objeto en una matriz.
El método Array.from() convierte un objeto similar a una matriz o un objeto transitable en una matriz real.
Entonces, ¿qué es un objeto similar a una matriz? El requisito más básico para el llamado objeto tipo matriz es un objeto con el atributo de longitud.
1. Convierta objetos similares a matrices en matrices reales:
let arrayLike = { 0: 'tom', 1: '65', 2: 'Hombre', 3: ['jane', 'juan', 'María'], 'longitud': 4 } let arr = Array.from(arrayLike) console.log(arr) // ['tom','65','M',['jane','john','Mary']]
Entonces, ¿qué pasa si se elimina el atributo de longitud en el código anterior? La práctica ha demostrado que la respuesta será una matriz vacía de longitud 0.
Cambiemos el código nuevamente, es decir, tiene el atributo de longitud, pero el nombre del atributo del objeto ya no es de tipo numérico, sino de otros tipos de cadena. El código es el siguiente:
let arrayLike = {. 'nombre': 'tom', 'edad': '65', 'sexo': 'masculino', 'amigos': ['jane', 'john', 'Mary'], longitud: 4 } let arr = Array.from(arrayLike) console.log(arr) // [indefinido, indefinido, indefinido, indefinido]
encontrará que el resultado es una matriz con una longitud de 4 y todos los elementos no están definidos.
Se puede ver que al convertir un objeto similar a una matriz en un. matriz real, debe tener las siguientes condiciones:
este tipo de objeto de matriz debe tener un atributo de longitud, que se utiliza para especificar la longitud de la matriz. Si no hay ningún atributo de longitud, la matriz convertida es una matriz vacía.
El nombre del atributo de este tipo de objeto de matriz debe ser un número numérico o de cadena
ps: El nombre del atributo de este tipo de objeto de matriz puede estar entre comillas o no
2. Convierta los datos de la estructura Set en una matriz real:
let arr =. [12,45,97,9797,564,134,45642] let set = nuevo conjunto(arr) console.log(Array.from(set)) // [ 12, 45, 97, 9797, 564, 134, 45642 ]
Array.from
también puede aceptar un segundo parámetro, que actúa como el método map
de una matriz y se utiliza para mapear Cada elemento se procesa y el valor procesado se coloca en la matriz devuelta. De la siguiente manera:
sea arr = [12,45,97,9797,564,134,45642] let set = nuevo conjunto(arr) console.log(Array.from(set, item => item + 1)) // [ 13, 46, 98, 9798, 565, 135, 45643 ]
3. Convierte la cadena en una matriz:
let str = 'hola mundo !'; console.log(Array.from(str)) // ["h", "e", "l", "l", "o", " ", "w", "o", "r", " l", "d", "!"]
4. El parámetro Array.from es una matriz real:
console.log(Array.from([12,45,47,56,213,4654,154]))
así, Array .from devolverá una nueva matriz idéntica