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.
Para simular el comportamiento de break en los métodos del módulo async, podemos utilizar el siguiente truco:
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
Publicar un comentario
Si tenéis alguna duda o sugerencia, no dudéis en comentar. ;)