Tengo una función normal que llamó dentro de una función API. En la función API, llamaré a next (err) ya que tengo un controlador de errores común, pero ¿cómo arrojo un error en la función normal sin pasar next en params?
const xxx = async (req, res, next) => { try { normalFunction(data); } catch (err) { next(err); } }; function normalFunction(data) { try { } catch (e) { // how to throw error here?? } }Puedes usar tirar
La instrucción throw lanza una excepción definida por el usuario.
La ejecución de la función actual se detendrá (las declaraciones posteriores a throw no se ejecutarán) y el control pasará al primer bloque catch en la pila de llamadas.
Si no existe ningún bloque catch entre las funciones de la persona que llama, el programa terminará
function normalFunction(data) { try { } catch (e) { throw new Error(e); // Could also be a specific string, number, ... } }