Estoy siguiendo un ejemplo en línea:
const jeffBuysCake3 = cakeType => { return new Promise((resolve, reject) => { setTimeout(()=> { if (cakeType === 'black forest') { resolve('black forest cake!') //Callback function } else { reject('No cake 😢') //Callback function } }, 1000) }) } console.log(jeffBuysCake3('black forest').then(cake => console.log(cake)).catch(nocake => console.log(nocake))) ¡Esto vuelve black forest cake!
La parte que no entiendo es cake => console.log(cake)
¿Qué es un cake en este ejemplo?
Entiendo que pasar 'bosque negro' representa el parámetro cakeType .
Sin embargo, no me queda claro qué es 'pastel'.
¿ cake = se resolve ?
Pastel significa el resultado de la promesa llamada con éxito, en este ejemplo probablemente quieran referirse al resultado del pastel, y el resultado del pastel es un "bosque negro".
Podrías escribirlo así
jeffBuysCake3('black forest') .then(result => console.log(result)) .catch(error => console.log(error))y el resultado va a ser "torta selva negra", si la función de promesa fuera así
const jeffBuysCake3 = cakeType => { return new Promise((resolve, reject) => { setTimeout(()=> { if (cakeType === 'black forest') { resolve('Strawberry cake !') //Callback function } else { reject('No cake for you today') //Callback function } }, 1000) }) }el resultado será "¡Pastel de fresa!", mientras que si hubiera un error imprimiría "No hay pastel para ti hoy".
En caso de que no sepa cómo funcionan las promesas, cuando proporcionamos, significa que si la promesa se resolvió (con éxito), .then el resultado. Si no se pudo resolver, detecte el error que luego usamos .catch .