charAt vs charCodeAt
Всем здрассте.
Если возникнет необходимость посимвольно обработать строку, то лучше использовать charCodeAt? Вроде бы charAt создает новую строку, это больше накладных расходов, чем для числа. Или теперь компиляторы умеют всё оптимизировать как надо? |
Яростный Меч, можно ещё по индексу str[index], не знаю правда быстрее это или нет.
|
рони,
это тот же charAt, с возвратом строки |
Яростный Меч, не думаю что есть существенная разница
function charCodeAt(s) { for (var t, i = s.length; i--; t = s.charCodeAt(i)); } function charAt(s) { for (var t, i = s.length; i--; t = s.charAt(i)); } function asArray(s) { for (var t, i = s.length; i--; t = s[i]); } function test(f) { for (var i = 100, s = new Array(100000).join('qwertyuiopasdfghjklzxcvbnm'); i--; f(s)); } console.time('charCodeAt'); test(charCodeAt); console.timeEnd('charCodeAt'); console.time('charAt'); test(charAt); console.timeEnd('charAt'); console.time('asArray'); test(asArray); console.timeEnd('asArray'); |
Часовой пояс GMT +3, время: 15:15. |