Какова эффективность метода .toUpperCase javascript? - PullRequest
0 голосов
/ 12 июня 2018

Так что это кажется суперосновным вопросом, но мне интересно, встроенный в javascript метод .toUpperCase () - это эффективность времени O (n) или O (1)?

Я всегда просто предполагал, что это будет постоянное время, но теперь, когда я думаю об этом ... "под капотом", не нужно ли этому методу проходить через каждый символ, чтобы проверить, является ли он строчнымодним?(поэтому делает его O (n)

1 Ответ

0 голосов
/ 13 июня 2018

Алгоритм, описанный в String.prototype.toLowerCase ( ) спецификации, равен O (n).Каждая кодовая точка исходной строки (или строковое представление исходного объекта) копируется и преобразуется в новую кодовую точку.

Тот факт, что toUpperCase и toLowerCase возвращают новые строки (поскольку строки JavaScript являются неизменяемыми)достаточно, чтобы убедиться, что операция занимает линейное, а не постоянное время.

...