thread.sleep в asp.net [закрыто]

Кажется, что момент конкатенации строки быстрее: http://jsperf.com/es6-string-literals-vs-string-concatenation

ES6 with variable                     19,992,512    ±5.21%    78% slower
String concatenation with variable    89,791,408    ±2.15%    fastest
ES6 with function                     461,358       ±3.12%    99% slower
String concatenation with function    503,255       ±1.77%    99% slower

I (64-разрядный), который использует V8 4.3.31, с флагом #enable-javascript-harmony.

Для справки, последняя версия на Node.js (0.12) .0 на момент написания) использует V8 3.28.73: https://raw.githubusercontent.com/joyent/node/master/ChangeLog

Я уверен все возможные оптимизации производительности, которые могут быть применены, пока не применяются, поэтому было бы разумно ожидать, что производительность улучшится по мере приближения ES6 к завершению, и эти функции будут перенесены в стабильную ветвь.


Редактировать: Спасибо за комментарии @ user1329482, @ icl7126, Николай Борисик и ФестерКлюк. Теперь, когда прошло около двух лет с тех пор, как был задан этот вопрос, поддержка браузера ES6 значительно возросла, и была проведена хорошая оптимизация производительности. Вот некоторые обновления:

В Chrome (начиная с 59.0.3035) строковые литералы ES6 быстрее:

ES6 with variable                     48,161,401       ±1.07%    fastest
String concatenation with variable    27,046,298       ±0.48%    44% slower
ES6 with function                     820,441          ±1.10%    98% slower
String concatenation with function    807,088          ±1.08%    98% slower

В Firefox (начиная с 57.0.0) строка ES6 литералы быстрее:

ES6 with variable                     1,924,610,984    ±0.50%    fastest
String concatenation with variable    1,876,993,458    ±0.79%    3% slower
ES6 with function                     539,762          ±5.04%    100% slower
String concatenation with function    546,030          ±5.88%    100% slower

В Safari (начиная с 11.0.2) это зависит от:

ES6 with variable                     1,382,752,744    ±0.71%    fastest
String concatenation with variable    1,355,512,037    ±0.70%    2% slower
ES6 with function                     876,516          ±1.01%    100% slower
String concatenation with function    883,370          ±0.79%    100% slower

При использовании строки typecast строковые литералы ES6 быстрее. Однако при вызове функции из литерала конкатенация строк происходит быстрее в этом примере.

Если вы действительно хотите углубляться и нужно сжимать каждую каплю производительности из Safari, я бы предложил настроить тесты которые видят, если / как неверно введенные переменные и несколько ссылок в производительности литерала.

13
задан Scath 25 January 2019 в 02:14
поделиться