Estoy perplejo por qué un ingeniero anterior escribió un código que me parece un trabajo doble. ¿No podría simplemente hacer las accounts.map() o for (const acct of accounts) ? ¿Por qué ambos?
const accounts = await mongohelper.find(conn, 'accounts', query, 2000); if(!accounts.length){return;} const arrayofwork = accounts.map(act => salesmanwork(act, conn)) for (const act of accounts) { arrayofwork.push(salesmanwork(act, conn)); } await Promise.allSettled(arrayofwork) return await recursivecall(workitemin, count);Está haciendo una duplicación de los valores procesados de la matriz de accounts mediante la función de trabajo de salesmanwork . Tal vez eso es lo que se pretendía o podría ser un error, algún código que no eliminaron.
La salida es básicamente la misma, las únicas diferencias son la velocidad, la legibilidad y la funcionalidad, que apenas difieren. Lo que quiero decir con esto es que cuando se usa .map() devuelve una matriz, donde puede usarla en frases y promesas, mientras que en bucles for, necesita inicializar, luego hacer el bucle y devolver lo mismo. valor.
En este caso, probablemente sea algún código que alguien olvidó limpiar; cualquiera funciona, las únicas diferencias son la legibilidad. Si está utilizando una matriz más grande, use el bucle for; de lo contrario, depende de usted.