JavaScript-ում ռեգուլյար արտահայտությունների օգտագործման օպտիմիզացիա
Ռեգուլյար արտահայտությունները շատ ծանր և համեմատաբար դանդաղ աշխատող բան են: Երբ այլընտրանքային լուծում կա, ցանկալի է օգտագործել հենց այն:
Դիտարկենք մի օրինակ: Ենթադրենք, մեզ անհրաժեշտ է ստուգել, արդյոք որոշակի տողը սկսվում է բացականչական նշանով: Ինչ-որ ծրագրավորող այս խնդիրը լուծել է ռեգուլյար արտահայտության միջոցով.
javascriptlet str = '!123';
if (/^!/.test(str)) {
console.log('+++');
} else {
console.log('---');
}
Սակայն, նման խնդիրը ունի շատ ավելի արագ աշխատող լուծում.
javascriptlet str = '!123';
if (str[0] == '!') {
console.log('+++');
} else {
console.log('---');
}
Задание 1
Հաջորդ կոդը ստուգում է տողում
'33' ենթատողի առկայությունը:
Կատարեք օպտիմիզացիա.
javascriptlet str = '123345';
if (/33/.test(str)) {
console.log('+++');
} else {
console.log('---');
}
Задание 2
Հաջորդ կոդը ստուգում է, արդյոք տողը
վերջանում է '.html'-ով:
Կատարեք օպտիմիզացիա.
javascriptlet str = 'index.html';
if (/\.html$/.test(str)) {
console.log('+++');
} else {
console.log('---');
}
Задание 3
Հաջորդ կոդը կտրում է վերջնական բացատները: Կատարեք օպտիմիզացիա.
javascriptlet str = ' text ';
let res = str.replace(/^\s+|\s+$/g, '');
console.log(res);