⊗jsSpOtEI 273 of 294 menu

जावास्क्रिप्ट में लूप के अनावश्यक पासों का ऑप्टिमाइजेशन

निम्नलिखित कोड में, एक प्रोग्रामर जाँच रहा है कि क्या सरणी में संख्या 3 है:

let arr = [1, 2, 3, 4, 5, 6, 7, 8, 9]; let exists = false; for (let elem of arr) { if (elem === 3) { exists = true; } } console.log(exists);

इसके समाधान में क्या गलत है? ऐसा लगता है कि लूप में कोई अनावश्यक ऑपरेशन नहीं किए जा रहे हैं। हालाँकि, समस्या यह है कि यह निर्धारित होने के बाद कि संख्या 3 सरणी में है, लूप फिर भी सरणी के अंत तक चलता रहता है।

सबसे अतार्किक तब होगा यदि संख्या 3 सरणी की शुरुआत में कहीं मिल जाए, और स्वयं सरणी की लंबाई, मान लीजिए, 1000 तत्वों की हो। तो लूप के हज़ार बेकार, अनावश्यक पास होंगे! इष्टतम नहीं।

कोड को इष्टतम बनाते हैं, लूप को समय रहते रोक कर:

let arr = [1, 2, 3, 4, 5, 6, 7, 8, 9]; let exists = false; for (let elem of arr) { if (elem === 3) { exists = true; break; } } console.log(exists);

निम्नलिखित कोड गणना करता है कि सरणी के कितने तत्वों को जोड़ने की आवश्यकता है, ताकि योग 10 से अधिक हो जाए। इष्टतम बनाएँ:

let arr = [1, 2, 3, 4, 5, 6, 7, 8, 9]; let sum = 0; let i = 1; for (let elem of arr) { sum += elem; if (sum <= 10) { i++; } } console.log(i);

निम्नलिखित कोड दिए गए अंतराल से सम संख्याएँ प्रिंट करता है। इष्टतम बनाएँ:

for (let i = 0; i <= 100; i++) { if (i % 2 === 0) { console.log(i); } }

निम्नलिखित कोड उन संख्याओं को प्रिंट करता है, जो एक साथ 2 और 3 से विभाज्य हैं। इष्टतम बनाएँ:

for (let i = 0; i <= 100; i++) { if (i % 2 === 0 && i % 3 === 0) { console.log(i); } }

निम्नलिखित कोड वर्तमान वर्ष की सभी शुक्रवार 13 वाली तारीखों को ढूँढता है। इष्टतम बनाएँ:

for (let i = 0; i <= 11; i++) { let curr = new Date; let last = new Date(curr.getFullYear(), i + 1, 0).getDate(); for (let j = 1; j <= last; j++) { let date = new Date(curr.getFullYear(), i, j); if (date.getDate() === 13 && date.getDay() === 5) { console.log(date); } } }
हिन्दी
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
हम साइट के कार्य, विश्लेषण और व्यक्तिगतकरण के लिए कुकीज़ का उपयोग करते हैं। डेटा प्रसंस्करण गोपनीयता नीति के अनुसार किया जाता है।
सभी स्वीकार करें कॉन्फ़िगर करें अस्वीकार करें