⊗jsSpOtRO 270 of 294 menu

Կրկնվող գործողությունների օպտիմիզացիան JavaScript-ում

Հաճախ սկսնակ ծրագրավորողները անմտորեն կանչում են նույն ֆունկցիան մի քանի անգամ՝ վատնելով ռեսուրսները:

Դիտարկենք մի օրինակ: Ենթադրենք մենք ունենք մի տող, որը պարունակում է որոշակի ուղի:

let path = 'img.png';

Ենթադրենք, մեր առաջ խնդիր է դրված ստուգել, արդյոք ուղին ավարտվում է .png .png կամ .jpg ընդլայնումներով: Որոշ սկսնակ ծրագրավորող գրել է հետևյալ լուծումը:

let path = 'img.png'; if (path.slice(-4) === '.png' || path.slice(-4) === '.jpg') { console.log('+++'); } else { console.log('---'); }

Ի՞նչ է սխալ այս լուծման մեջ: Խնդիրը նրանում է, որ slice մեթոդը կանչվում է երկու անգամ, անելով նույն բանը: Դա, իհարկե, ոչ օպտիմալ է:

Օպտիմիզացնելու համար անհրաժեշտ է կատարել տողի կտրումը մեկ անգամ, արդյունքը գրել փոփոխականի մեջ, ապա օգտագործել այդ փոփոխականը հետագայում.

let path = 'img.png'; let ext = path.slice(-4); if (ext === '.png' || ext === '.jpg') { console.log('+++'); } else { console.log('---'); }

Օպտիմիզացրեք ստորև բերված կոդը.

let num = 123; if (String(num)[0] === '1' || String(num)[0] === '2') { console.log('+++'); } else { console.log('---'); }

Օպտիմիզացրեք ստորև բերված կոդը.

let date = new Date(); if (date.getDay() === 0 || date.getDay() === 6) { console.log('weekend'); } else { console.log('weekday'); }

Օպտիմիզացրեք ստորև բերված կոդը.

let date = new Date(); let res; if (date.getFullYear() >= 2020 && date.getFullYear() <= 2030) { res = 'year ' + date.getFullYear() + ' fits'; } else { res = 'year ' + date.getFullYear() + ' doesn't fit'; } console.log(res)
Հայերեն
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Մենք օգտագործում ենք cookie-ներ կայքի աշխատանքի, վերլուծության և անհատականացման համար։ Տվյալների մշակումը կատարվում է համաձայն Գաղտնիության քաղաքականության։
ընդունել բոլորը կարգավորել մերժել