Bill Helper es-419 Explainer

Explicación de Asistente de factura

Objetivo de este acertijo: Usar una función asistente dentro de otra función.

Tutorial de la solución: Al escribir una función complicada, es fácil que el código se vaya alargando cada vez más y sea más difícil de leer.

Cuando sucede esto, es útil dividir las funciones grandes en funciones más pequeñas, y usar estas funciones como “asistentes” para una función principal. Esto permite que la función principal sea más fácil de leer.

En este acertijo, una función llamada calculateTax() se importa de código adicional. Esta función se puede usar para ayudar a la función splitBill() del rompecabezas.

Para completar el acertijo, crea una nueva variable dentro de la función y dale calculateTax(total) como un valor. Por ejemplo:

let tax = calculateTax(total);

Luego, dentro de la función, agrega la variable a total usando el operador +=.

Por último, devuelve el total dividido por people.

Solución del código de ejemplo:

import { calculateTax } from 'grasshopper.helperFunctions';

function splitBill(total, people) {
    let tax = calculateTax(total)
    total += tax;
    return total / people;
}

console.log(splitBill(76, 4));

Conceptos de JavaScript: funciones, funciones asistentes, console.log(), variables, variables locales, declaración return, importaciones, operador +=

Código adicional (código oculto que se ejecuta antes del código del rompecabezas):

let calculateTax = total => {
    return total * 0.15;
};
18 Likes

:wave: hi I cant pass this exercise because I cant add the tax=+total before the ;

3 Likes

Estoy trabada en este ejercicio, pongo la solución y me da error cuando supuestamente la solución es correcta

3 Likes

Si a mí me pasó algo parecido

1 Like

hola realizo el ejercicio y me sale correcto pero no entiendo como realiza la operación matemática alguien me puede explicar

Lo entendí pero debería de indicar en el ejercicio que el impuesto es de 15% aunque pienso como ingeniero uno tiene que ser capaz de decifrarlo
Buen ejercicio

Me ocurre igual, consiguió solucionarlo?

La función calculate tax está importada, pero no invocada.
Entonces hay que crear una variable e invocar la función.
En la línea siguiente a function hay que definir la nueva variable.

function…
let tax = calculate(total)

Por el monto del impuesto, no se preocupen, debe estar en eso que el equipo llama Código Oculto y que no importa a efectos del ejercicio.

Una vez calculado el impuesto solo hay que sumarlo a total

total += tax

Estas 2 líneas van entre function… y return

5 Likes

Acá el tema en cuestión es crear una función asistente “nameFunction()” que aún no se declaró en ningún momento. Para hacerlo se crea una variable “tax” dentro del {} bloque de código de splitBill () con un valor igual a la función asistente, en este caso calculateTax() con un parámetro (total), luego para añadirlo al cobro usamos el operador +=. No hay que agregar ningún número porque ese valor ya está propuesto por grasshopper.helperFunctions.

1 Like

Hola! Está fue mí solución