Explicador de Un nuevo lugar
Objetivo de este acertijo: Actualizar el object boatAtlanta
y luego agregarlo al arreglo travelToCities
.
Tutorial de la solución: La primera línea importará
un arreglo llamado travelToCities
al módulo grasshopper.travel
. Los elementos en este arreglo son objects, y cada uno tiene 4 propiedades: destination
, transportMode
, cost
y country
.
La variable last
almacenará el object final en el arreglo. Podemos ver que el destination
del object last
es 'Springfield'
iniciando sesión en él en la consola.
El object boatAtlanta
se crea, y tiene las 4 propiedades necesarias, excepto que tenemos que cambiar 2 de sus valores. El destination
debe ser 'Atlanta'
, y el transportMode
debe ser 'boat'
. Simplemente editamos el string 'Seattle'
a 'Atlanta'
y el string 'car'
a 'boat'
.
El object boatAtlanta
se “empujará” al arreglo travelToCities
, lo que significa que se agrega al final.
Por último, el código actualiza la variable last
para que almacene el nuevo “último object” en el arreglo, e imprime en la consola el nuevo destination
al final.
Solución del código de ejemplo:
(Pulsa a continuación para revelar)
import { travelToCities } from 'grasshopper.travel';
let last = travelToCities[travelToCities.length - 1];
console.log(last.destination);
let boatAtlanta = {
destination: 'Atlanta',
transportMode: 'boat',
cost: 200,
country: 'Hoptopia'
};
travelToCities.push(boatAtlanta);
last = travelToCities[travelToCities.length - 1];
console.log(last.destination);
Conceptos de JavaScript: console.log()
, estructuras de datos (arreglos, objects), import
, indexación, .length()
, .push()
, alcance de variable (let)
Código adicional (código oculto que se ejecuta antes del código del acertijo):
const travelToCities = [
{destination: "Brazzaville", transportMode: "car", cost: 74, country: "Grasslandia"},
{destination: "Budapest", transportMode: "boat", cost: 165, country: "Atlantis"},
{destination: "Springfield", transportMode: "plane", cost: 171, country: "Hoptopia"}
];