Có phải [x,y,z].join('')
thực sự nhanh hơn x + y + z
cho chuỗi không?[x, y, z] .join ('') có thực sự nhanh hơn x + y + z cho chuỗi không?
Dưới sự ấn tượng rằng join() là nhanh hơn, tôi bắt đầu thông qua mã của tôi để sử dụng nó chứ không phải là +, sau đó tôi chạy vào dòng sau trong mã Google Analytics:
ga.src = ('https:' === document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
Giả sử các lập trình viên của Google là một trong những người hiểu biết nhiều nhất, nó làm tôi ngạc nhiên. Tất nhiên, dòng đó sẽ chỉ chạy một lần cho mỗi lần tải trang, và người ta có thể nói rằng bất kỳ sự khác biệt tốc độ nào là không đáng kể. Nhưng vẫn?
Tốc độ của một chức năng được xác định bởi JavaScript triển khai, thay đổi giữa các trình duyệt. Để kiểm tra - http://jsperf.com/ – Bakudan
Đây cũng là '[x, y] .join ('')'. Tôi tin rằng các khoản tiết kiệm là với một số lượng lớn các đối số (vì bạn thực hiện một cuộc gọi cho mỗi phụ thêm với '+' và tham gia chỉ là một cuộc gọi hàm.) – Hogan
+ Bakudan, tìm thấy một thử nghiệm mà nên làm sáng tỏ một số: http: // jsperf .com/concat-vs-join2/4 – TJR