¿Es [x,y,z].join('')
realmente más rápido que x + y + z
para cadenas?¿Es [x, y, z] .join ('') realmente más rápido que x + y + z para las cadenas?
Bajo la impresión de que join() es más rápido, empecé a través de mi código para utilizarlo en lugar de +, entonces me encontré con la siguiente línea en el código de Google Analytics:
ga.src = ('https:' === document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
Suponiendo que los programadores de Google están entre los más informados, me hace pensar. Por supuesto, esa línea solo se ejecutará una vez por carga de página, y se podría decir que cualquier diferencia de velocidad es insignificante. ¿Pero aún?
La velocidad de una función está determinada por el código JavaScript implementación, que varía entre los navegadores. Para probar - http://jsperf.com/ – Bakudan
Esto también es '[x, y] .join ('')'. Creo que el ahorro es con una mayor cantidad de argumentos (porque haces una llamada por adjuntar con '+' y join es solo una llamada de función.) – Hogan
+ Bakudan, encontró una prueba que debería arrojar algo de luz: http: // jsperf .com/concat-vs-join2/4 – TJR