Simular BREAK en modulo ASYNC de node.js

La palabra reservada break se utiliza en multitud de lenguages de programación para terminar de inmediato la ejecución del código en el bucle actual, de modo que el programa seguirá ejecutando las instrucciones inmediatamente después de este.

async node.js

Para simular el comportamiento de break en los métodos del módulo async, podemos utilizar el siguiente truco:
async.each(array, function (item, callback) {
    var breakErr = new Error('break');
    breakErr.break = true;
    callback(breakErr);
}, function (err) {
    if (err && !err.break) {
        console.error(err);
        return;
    }

    console.log('ok!');
});
En este ejemplo, el bucle se ejecutará solamente una vez, el breakErr detendrá el bucle y ejecutará la segunda función. Esta controlará si la ejecución ha sido detenida por un error común o por el contrario este fue un breakError, en caso de ser este último, la ejecución habrá terminado de manera satisfactoria.

Comentarios

Entradas populares de este blog

Ordenar cualquier array con SORT en JAVA

Modificadores de acceso (public, protected y private) JAVA

Calcular factorial de un numero en JAVA