⊗jsSpOtRHO 271 of 294 menu

JavaScriptda Og'ir Amallarni Takrorlashni Optimallashtirish

Oldingi darsda funktsiyalarni takroriy chaqirishlar aslida juda oz vaqt oladi va bizning optimizatsiyamiz juda ko'p tejamaydi. Biroq, hammasi yomonroq bo'ladi, agar biz bir necha marta "og'ir" funktsiyani chaqirsak, u yetarlicha uzoq vaqt bajariladi.

Masalan, bizda sonning bo'luvchilarini topadigan funktsiya bor deylik:

function getDivisorsSum(num) { let res = 0; for (let i = 1; i <= num; i++) { if (num % i === 0) { res += i; } } return res; }

Shubhasiz, bu funktsiya yetarlicha "og'ir". Shuning uchun quyidagi kodni yozish yomon fikr bo'ladi:

let num = 123456; if (getDivisorsSum(num) >= 10 && getDivisorsSum(num) <= 100) { console.log('+++'); } else { console.log('---'); }

Albatta, "og'ir" amalni bajarish yaxshiroq bir marta va natijani o'zgaruvchiga yozing, keyin esa kerakli joylarda shu o'zgaruvchidan foydalaning:

let num = 123456; let sum = getDivisorsSum(num); if (sum >= 10 && sum <= 100) { console.log('+++'); } else { console.log('---'); }

Quyida keltirilgan kodni optimallashtiring:

let num = 1233456789; if (getSumSquare(num) >= 10 && getSumSquare(num) <= 100) { console.log('+++'); } else { console.log('---'); } function getSumSquare(num) { let digits = String(num).split(''); let sum = 0; for (let digit of digits) { sum += digit ** 2; } return sum; }
Oʻzbek
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекTiếng Việt
Biz sayt ishlashi, tahlil qilish va shaxsiylashtirish uchun cookie-fayllardan foydalanamiz. Ma'lumotlarni qayta ishlash Maxfiylik siyosatiga muvofiq amalga oshiriladi.
hammasini qabul qilish sozlash rad etish