Oui, il n'y a pas de callback dans forEachCallback, c'est justement le principe de la méthode. Le "callback" n'est pas passé à la fonction: il est dans la fonction même, d'où le fait d'avoir nommé la fonction avec le terme "Callback".
Le callback pèse lourd dans le benchmark, et ce n'est pas forcément la manière la plus élégante de faire les choses, car faire un "Object.datas.forEach(Object.treatment)" n'est franchement pas beau (je trouve), alors qu'un "Object.forEachDoTreatment()" est plus élégant.
forEach(func) ne fait rien non plus si on ne met rien dans "func". Spécifier les contextes, c'est cool, mais ce n'est pas très OO, or, Array.forEach est plutôt OO, donc je trouve l'idée de "forcer" un contexte plutôt mal venue.
Elle permet de zapper les cases vides du tableau si on le lui dit dans le contenu de la boucle.
Ce que j'essaie de mettre en avant, c'est que vouloir faire un "forEach" méga général sur tous les tableaux n'est ni le plus pratique, ni le plus performants. Il faut mieux faire une méthode forEachDoThat(), forEachDoThis()... pour les classes qui ont besoin de faire un traitement sur leurs tableaux de données.
Le callback pèse lourd dans le benchmark, et ce n'est pas forcément la manière la plus élégante de faire les choses, car faire un "Object.datas.forEach(Object.treatment)" n'est franchement pas beau (je trouve), alors qu'un "Object.forEachDoTreatment()" est plus élégant.
forEach(func) ne fait rien non plus si on ne met rien dans "func". Spécifier les contextes, c'est cool, mais ce n'est pas très OO, or, Array.forEach est plutôt OO, donc je trouve l'idée de "forcer" un contexte plutôt mal venue.
Elle permet de zapper les cases vides du tableau si on le lui dit dans le contenu de la boucle.
Ce que j'essaie de mettre en avant, c'est que vouloir faire un "forEach" méga général sur tous les tableaux n'est ni le plus pratique, ni le plus performants. Il faut mieux faire une méthode forEachDoThat(), forEachDoThis()... pour les classes qui ont besoin de faire un traitement sur leurs tableaux de données.