Le moyen le plus efficace de concaténer des chaînes en JavaScript?

En JavaScript, j’ai une boucle qui a beaucoup d’itérations, et à chaque itération, je crée une chaîne énorme avec beaucoup d’opérateurs += . Existe-t-il un moyen plus efficace de créer une chaîne? Je pensais à créer un tableau dynamic où je continue à append des chaînes et ensuite à faire une jointure. Quelqu’un peut-il expliquer et donner un exemple de la façon la plus rapide de le faire?

Semble basé sur des tests de performance sur JSPerf que l’utilisation de += est la méthode la plus rapide, mais pas nécessairement dans tous les navigateurs.

Pour construire des chaînes dans le DOM, il semble préférable de concaténer la chaîne en premier, puis d’append au DOM, plutôt que de l’append de manière itérative au dom. Vous devriez toutefois évaluer votre propre cas.

(Merci @zAlbee pour la correction)

Je n’ai aucun commentaire sur la concaténation elle-même, mais j’aimerais souligner que la suggestion de @Jakub Hampl:

Pour construire des chaînes de caractères dans le DOM, dans certains cas, il serait peut-être préférable d’append de manière itérative au DOM, plutôt que d’append une énorme chaîne à la fois.

est faux, car il est basé sur un test imparfait. Ce test n’a jamais été ajouté au DOM.

Ce test fixe montre que créer la chaîne en une fois avant de la rendre est beaucoup plus rapide. Ce n’est même pas un concours.

(Désolé, c’est une réponse séparée, mais je n’ai pas assez de représentant pour commenter les réponses pour le moment.)

Il y a trois ans que cette question a été répondue mais je fournirai ma réponse de toute façon 🙂

En fait, la réponse acceptée n’est pas totalement correcte. Le test de Jakub utilise une chaîne codée en dur qui permet au moteur JS d’optimiser l’exécution du code (le V8 de Google est vraiment bien dans ce genre de choses!). Mais dès que vous utilisez des chaînes complètement aléatoires ( voici JSPerf ), la concaténation de chaînes sera sur une deuxième place.