199 votes

Meilleur moyen pour concaténer des chaînes de caractères en JavaScript?

En JavaScript, j'ai une boucle qui a un nombre d'itérations, et à chaque itération, je suis entrain de créer un énorme chaîne de caractères avec beaucoup d' += opérateurs. Est-il un moyen plus efficace pour créer une chaîne de caractères? Je pensais à créer un tableau dynamique où je continue à ajouter des cordes pour ensuite faire une jointure. Quelqu'un peut-il expliquer et donner un exemple de la meilleure façon de le faire?

Merci.

168voto

Jakub Hampl Points 19161

Semble fondée sur des critères à JSPerf que l'utilisation d' += est la méthode la plus rapide, mais pas nécessairement dans tous les navigateurs.

Pour la construction de chaînes de caractères dans les DOM, il semble être mieux pour concaténer la chaîne, puis ajouter les DOM, plutôt que de manière itérative l'ajouter au dom. Vous devez tester votre propre cas.

(Merci @zAlbee pour la correction)

96voto

zAlbee Points 113

Je n'ai pas de commentaire sur la concaténation lui-même, mais je tiens à souligner que @Jakub Hampl suggestion:

Pour la construction de chaînes de caractères dans les DOM, dans certains cas, il peut être mieux de manière itérative ajouter au DOM, plutôt que d'ajouter une énorme chaîne de caractères à la fois.

a tort, car il est basé sur les lacunes du test. Ce test n'a jamais véritablement ajoute dans le DOM.

Ce test fixes montre que la création de la chaîne à la fois avant le rendu, il est beaucoup, BEAUCOUP plus rapide. Il n'est même pas un concours.

(Désolé c'est une réponse distincte, mais je n'ai pas assez de rep pour commenter les réponses à ce jour.)

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X