mapas y para … de bucles | javascript

En este tutorial, vamos a aprender acerca de mapas y class … de bucles en JavaScript con ejemplos.

1) mapear

Empecemos con los mapas , que normalmente los utilizan cuando se trabaja con bases de datos NoSQL como MongoDB o Firebase. Almacena par clave-valor.

Ejemplo:

var bill = {
name: 'I am bill',
age: 24,
isActive: true,
}
var marry ={
name:'I am marry',
age: 23,
isActive:true,
}
var max = {
name: 'I am max',
age: 29,
isActive: false,
}
let users = newMap()
console.log(typeof users) //line 1
console.log('n',users); //line 2
users.set('bill',bill) //line 3
users.set('marry',marry)
users.set('max',max)
console.log(`nsize of map 'users': ${users.size}`); //line 4
console.log('n',users.get('max')); //line 5
console.log('n',users.keys()); //line 6
console.log('n',users.values(),'n'); //line 7

salida

maps and for...of loops | Javascript - 4

Explicación:

Hemos creado tres objetos, factura , casarse con y máximo . Cada uno contiene tres propiedades: nombre (nombre del usuario), edad (edad de usuario) y isActive (estado activo verdadero o falso). A continuación, creamos un objeto de mapa for usando usuarios = nuevo mapa () (Nota: No discutiremos objetos y for aquí en este artículo ya que está fuera del alcance del artículo).

Es por eso que consoló a cabo typeof usuarios en línea 1 que devuelve un objeto y que es obvio. En la línea 2 pasamos nuestra usuarios objeto que emite un mapa vacío. (Por favor, ignore el ‘ n’ secuencia de escape que acabo de utilizar para hacer la salida más legible)

En línea 3 , que poblaron la usuarios con la clave-valor de moda que se proporcionamos valor class cada clave, for ello se utilizó set () método tomamos el primer argumento como clave y el segundo como el valor. En el ejemplo anterior, he utilizado factura como en línea 3 como users.set ( ‘factura’, factura) donde pude escribirlo Billy, bola o lo que me gusta. Aviso caso, se utilizó una cadena ( factura ) como la clave y el objeto (factura) como valor pesar de que puede ser al revés que no hará ningún sentido. Hay una propiedad de objeto de mapa que es un tamaño que adivina el tamaño (número de pares de clave y valor) de ese objeto. Como se representa en línea 4 .

Como una analogía a la matriz, se puede acceder a las matrices mediante corchetes [] Del mismo modo, podemos acceder a los usuarios utilizando get () método que en el línea 5 , se necesita una clave como su parámetro y será class el valor correspondiente a la misma. Al igual que en get () método que tenemos teclas () y valores () que devuelve la lista de todas las claves y los valores, respectivamente, como se muestra en las salidas de la línea 4 y 5 .

En las últimas dos salidas, puede notar que dice MapIterator es algo que podemos iterar sobre él o bucle a través de él. Vamos a ver lo siguiente sección:

2) class … de bucle

Sintaxis:

    for (const iterator of object) {
...OUR CODE...
}

Comencemos con un ejemplo:

console.log('n',users,'n') //line 8
for (const keys ofusers.keys()) { //line 9
console.log(keys);
}
console.log();
for (const values of users.values()) { //line 10
console.log(values.name);
}
console.log();
for (const [key, value] of users.entries()) { //line 11
console.log(`${key} = ${value.name}`);
}
console.log();
users.forEach((value, key) =>console.log(`${key} = ${value.name}`) ) // line 12
var arrayOfArray = [['one',1],['two',2],['three',3]] //line 13
var newMap = newMap(arrayOfArray)
console.log(newMap);

salida:

maps and for...of loops | Javascript - 5

Explicación:

En línea 8 , nos consolamos a cabo usuario ( Nota: ‘ n’ secuencia de escape son solamente class hermosa salida misma con el comando registro de la consola vacío) y en la producción, obtendremos un mapa completo. Ver cada tecla está apuntando a su valor (objeto). En línea 9 y 10 , se utilizó un class … de bucle que itera básicamente en infalible en nuestra class que son claves y valores de este modo se utilizó users.keys () y users.values ​​() para iterar (circular) a través de claves y valores respectivamente.

Ahora, lo que si quiero un par clave-valor o quiero bucle a través de pares de valores clave así que en ese class, utilizaremos array [clave, valor] aprobada en users.entries () . Recordemos que no iterar en los usuarios, sino entradas método utilizado () que devuelve par clave-valor. Así class un par, se pasa un array en un class … de bucle.

Ya que estamos hablando de MapIterators también se puede conectar a través forEach () como en la línea 12 se utilizó user.forEach () con una función de flecha, simplemente ingrese a la consola una salida. Pero la cosa a notar aquí en función de la flecha que pasa par en lugar de un par clave-valor de la clave de valor, y es la forma en que funciona forEach class mapa, hacer lo contrario de que no dará lugar a la desiredway.

Hay una cosa más que podemos hacer con mapas utilizando matrices, esto es lo que hicimos después línea 13 . Tuvimos una matriz de matrices, donde cada subconjunto contiene 2 elementos solamente como clave y el valor, por lo que creamos un objeto newMap (del mismo modo que hemos creado usuarios de MAP), pero pasamos gama arrayOfArray de matrices que tienen valor clave que lo hará mapa mismo a cada tecla a su valor.


Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *