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 concat
w 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, join
gdy chcesz połączyć ciągi.
Ale @Arthur wskazał, że join
jest to szybsze, jeśli faktycznie chcesz łączyć ciągi za pomocą separatora.
Aktualizacja - 2020
Chrome: tablica join
jest prawie 2 times faster
zgodna ze stringami +
Zobacz: https://stackoverflow.com/a/54970240/984471
Uwaga:
- Tablica
join
jest lepsza, jeśli maszlarge strings
- Jeśli potrzebujemy wygenerować
several small strings
w 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.