← ТехнологииНай-важното за

RegExp.test(): защо повторната проверка може да е различна

Издател: ResumeMaker • 1 източника

Публикувано: 21.10.2026 14:07 · Променено: 21.10.2026 14:07

AI проверка по източници: 21.10.2026 12:40. Не е редакторско одобрение.

В няколко изречения

Накратко

Изразите с g или y пазят позиция на последното съвпадение.

Полезно е да знаеш

test() връща true или false за съвпадение на регулярен израз. При флагове g и y обектът е със състояние и използва lastIndex. Например const r = /a/g; r.test("a"); r.test("a"); дава последователно true и false. [1]

За независима булева проверка често не ти е нужен g. Ако го използваш съзнателно за обхождане, управлявай позицията. Не обяснявай променящия се резултат като случайна грешка на JavaScript: същият RegExp обект продължава от запазеното място, докато задачата може да очаква ново търсене.

Източници

За повече подробности и проверка на информацията:

  1. [1] MDN — RegExp.test ↗