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);