⊗jsSpOtRHO 271 of 294 menu

জাভাস্ক্রিপ্টে ভারী অপারেশনের পুনরাবৃত্তি অপ্টিমাইজেশন

পূর্ববর্তী পাঠে, ফাংশনের পুনরাবৃত্তি কল আসলে খুব কম সময় নেয় এবং আমাদের অপ্টিমাইজেশন খুব বেশি সাশ্রয় করবে না। তবে, পরিস্থিতি আরও খারাপ হবে যদি আমরা একাধিক বার একটি "ভারী" ফাংশন কল করি, যা পর্যাপ্ত দীর্ঘ সময় ধরে চলে।

ধরুন, উদাহরণস্বরূপ, আমাদের একটি ফাংশন আছে যা সংখ্যার ভাজক খুঁজে পায়:

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

স্পষ্টতই, এই ফাংশনটি যথেষ্ট "ভারী"। সুতরাং, এইরকম কোড লেখা একটি খারাপ ধারণা হবে:

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

অবশ্যই, এটি ভাল হবে যদি "ভারী" অপারেশনটি একবার সম্পাদন করা হয় এবং ফলাফল একটি ভেরিয়েবলে লেখা হয়, এবং তারপর প্রয়োজনীয় স্থানে সেই ভেরিয়েবলটি ব্যবহার করা হয়:

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

নিচের কোডটি অপ্টিমাইজ করুন:

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; }
বাংলা
AfrikaansAzərbaycanБългарскиБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
আমরা সাইট পরিচালনা, বিশ্লেষণ এবং ব্যক্তিগতকরণের জন্য কুকি ব্যবহার করি। ডেটা প্রক্রিয়াকরণ গোপনীয়তা নীতি অনুযায়ী করা হয়।
সব গ্রহণ করুন কনফিগার করুন প্রত্যাখ্যান করুন