Dziś przeczytałem ten wątek o szybkości konkatenacji ciągów.
O dziwo zwyciężyła konkatenacja ciągów:
Wynik był odwrotny od tego, co myślałem. Poza tym, istnieje wiele artykułów na ten temat, które wyjaśniają przeciwnie jak ten .
Domyślam się, że przeglądarki są zoptymalizowane pod kątem ciągów znaków concatw najnowszej wersji, ale jak to robią? Czy możemy powiedzieć, że lepiej jest używać +podczas łączenia ciągów?
Aktualizacja
Tak więc w nowoczesnych przeglądarkach konkatenacja ciągów jest zoptymalizowana, więc używanie +znaków jest szybsze niż używanie, joingdy chcesz połączyć ciągi.
Ale @Arthur wskazał, że joinjest to szybsze, jeśli faktycznie chcesz łączyć ciągi za pomocą separatora.
Aktualizacja - 2020
Chrome: tablica joinjest prawie 2 times fasterzgodna ze stringami +
Zobacz: https://stackoverflow.com/a/54970240/984471
Uwaga:
- Tablica
joinjest lepsza, jeśli maszlarge strings - Jeśli potrzebujemy wygenerować
several small stringsw końcowym wyniku, lepiej jest zastosować konkatację ciągów+, ponieważ w przeciwnym razie przejście z Array będzie wymagało kilku konwersji Array na String na końcu, co jest przeciążeniem wydajności.