Proceed To Checkout es-419 Explainer

Explicación de Procede con la compra

Objetivo de este acertijo: Completar las funciones de flecha para obtener el arreglo prices y el valor total.

Tutorial de la solución: Cuando ejecutas el código de inicio, están sucediendo algunas cosas extrañas; se está generando undefined y NaN. Podemos ver que las funciones de flecha en .map() y .reduce() están vacías, por lo que sabemos que no devuelven nada, que es problemático.

La variable prices debe ser un arreglo de sólo el valor .price de cada elemento en cart. La función de flecha debe tener un parámetro de entrada llamado item y debe return (devolver) item.price. Entre las llaves {} de la función de flecha, agrega return item.price. Ahora, el arreglo prices se puede crear correctamente.

A continuación, se puede calcular el total usando .reduce(). El método .reduce() también usa una función de devolución de llamada. La función debe tomar 2 argumentos: un acumulador y el elemento actual. En este acertijo, se llaman sum y price, ya que pasa por cada elemento en prices y los agrega a sum. La función de flecha debe actualizar sum usando el valor price y luego return (devolver) ese valor. Dado que el total debe almacenar todos los precios sumados, la función de flecha debe devolver return sum + price.

Solución del código de ejemplo:
(Pulsa a continuación para revelar)

Dado que esta parte del tema final del curso Arreglos y evalúa tus conocimientos, no hay solución del código de ejemplo.

Conceptos de JavaScript: operadores aritméticos (+), expresión binaria (concatenación +), bloque de código (función de flecha), condicionales (declaración ternaria), console.log, import, .map(), .reduce()
Código adicional (código oculto que se ejecuta antes del código del acertijo):

let cart = [
    {name: 'towel', price: 15},
    {name: 'soap', price: 6},
    {name: 'comb', price: 4},
    {name: 'sponge', price: 2}
];

Aquí está la solución, espero y les sirva c: