Explicación del acertijo Plantas perennes
Objetivo de este acertijo:
Usar el método includes, .includes()
, para verificar si un arreglo contiene un elemento específico.
Tutorial de la solución:
Usar el método includes, .includes()
, verifica si un arreglo contiene un elemento específico. Devolverá true
o false
dependiendo si se encuentra el elemento dentro del paréntesis.
En el código de inicio, hay 2 arreglos, perennials
y annuals
, una variable, plant
, y una if statement. El valor de plant
se selecciona de forma aleatoria de un arreglo que usa el operador de propagación para copiar los elementos de los arreglos perennials
y annuals
y los combinan en uno. Tal como está, la if statement usa .includes()
para verificar si 'pea'
está en el arreglo perennials
. Si lo está, devolverá true
, se ejecutará el código y se imprimirá 'is a perennial!'
. Si no, el código no se ejecutará. Dado que 'pea'
está en el arreglo annuals
, el código nunca se ejecutará. En este acertijo, cambiarás 'pea'
para que exista la posibilidad de que se ejecute el código.
Para completar el acertijo, dentro del paréntesis de .includes()
, cambia 'pea'
a plant
. Ahora hay un cincuenta por ciento de posibilidades de que plant
sea del arreglo perennials
.
Solución del código de ejemplo:
(Pulsa a continuación para revelar)
let perennials = ['artichoke', 'asparagus', 'rhubarb'];
let annuals = ['tomato', 'carrot', 'pea'];
let plant = pickRandom([...annuals, ...perennials]);
console.log(plant);
if (perennials.includes(plant) === true){
console.log('is a perennial!');
}
Conceptos de JavaScript: arreglo, variable, operador de propagación, devolución, .includes()
, string
Conceptos de Grasshopper: pickRandom()