⊗jsSpItOL 65 of 294 menu

জাভাস্ক্রিপ্টে ইটারেটরগুলির একক-বার ব্যবহার

প্রতিটি ইটারেটর মাত্র একবার লুপে অংশ নিতে পারে। এটি কিছুটা অপ্রত্যাশিত, কিন্তু যৌক্তিক - কারণ একবার শেষ হয়ে গেলে ইটারেটরটি তার doneকে false-এ সেট করে, যার অর্থ এটি আর পুনরাবৃত্তি করা যাবে না।

আসুন এটি যাচাই করি। ধরা যাক আমাদের নিম্নলিখিত জেনারেটর রয়েছে:

function *func() { yield 1; yield 2; yield 3; }

চলুন একটি ইটারেটর তৈরি করি:

let iter = func();

একটি লুপ দিয়ে ইটারেটরটি পুনরাবৃত্তি করি:

for (let elem of iter) { console.log(elem); // 1, 2, 3 }

এখন দুটি লুপ দিয়ে ইটারেটরটি পুনরাবৃত্তি করি:

for (let elem of iter) { console.log(elem); // 1, 2, 3 } for (let elem of iter) { console.log(elem); // কাজ করে না }

সমস্যার সমাধান করার জন্য প্রতিটি নতুন লুপের জন্য আমাদের নিজস্ব ইটারেটর তৈরি করতে হবে:

let iter1 = func(); for (let elem of iter1) { console.log(elem); // 1, 2, 3 } let iter2 = func(); for (let elem of iter2) { console.log(elem); // 1, 2, 3 }

আমরা সরলীকরণ করতে পারি:

for (let elem of func()) { console.log(elem); // 1, 2, 3 } for (let elem of func()) { console.log(elem); // 1, 2, 3 }

নিম্নলিখিত কোডে করা ভুলটি সংশোধন করুন:

function *func() { for (let i = 1; i <= 3; i++) { yield i; } } let elems = func(); for (let elem of elems) { console.log(elem); } for (let elem of elems) { console.log(elem); }
বাংলা
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
আমরা সাইট পরিচালনা, বিশ্লেষণ এবং ব্যক্তিগতকরণের জন্য কুকি ব্যবহার করি। ডেটা প্রক্রিয়াকরণ গোপনীয়তা নীতি অনুযায়ী করা হয়।
সব গ্রহণ করুন কনফিগার করুন প্রত্যাখ্যান করুন