АКЦИЯ: бесплатные месячные курсы по созданию сайтов
на выбор: верстка, JavaScript, PHP или фреймворки. Сегодня последний день для записи! Жми!
⊗jsSpOtRg 276 of 294 menu
НОВИНКА: Практика на Реальных Проектах и Работы в Портфолио. Бесплатный курс! Жми для записи!

Оптимизация использования регулярок в JavaScript

Регулярные выражения очень тяжелая и относительно медленно работающая штука. Когда есть альтернативное решение, желательно пользоваться именно им.

Давайте посмотрим на примере. Пусть нам нужно проверить, начинается ли некоторая строка на восклицательный знак. Некий программист решил эту задачу через регулярку:

let str = '!123'; if (/^!/.test(str)) { console.log('+++'); } else { console.log('---'); }

Однако, такая задача имеет гораздо более быстро работающее решение:

let str = '!123'; if (str[0] == '!') { console.log('+++'); } else { console.log('---'); }

Следующий код проверяет наличие в строке подстроки '33'. Выполните оптимизацию:

let str = '123345'; if (/33/.test(str)) { console.log('+++'); } else { console.log('---'); }

Следующий код проверяет, заканчивается ли строка на '.html'. Выполните оптимизацию:

let str = 'index.html'; if (/\.html$/.test(str)) { console.log('+++'); } else { console.log('---'); }

Следующий код обрезает концевые пробелы. Выполните оптимизацию:

let str = ' text '; let res = str.replace(/^\s+|\s+$/g, ''); console.log(res);
enru