6 of 17 menu

জাভাস্ক্রিপ্টে For-in লুপ দিয়ে একটি অ্যারে পুনরাবৃত্তির ত্রুটি

একটি অ্যারে পুনরাবৃত্তি করতে, আপনার for-of লুপ ব্যবহার করা উচিত। যাইহোক, মাঝে মাঝে,初学者 ভুলবশত for-in লুপ ব্যবহার করার চেষ্টা করে। আসুন এই ত্রুটির বৈশিষ্ট্যগত লক্ষণগুলি দেখি।

ধরুন আমাদের একটি অ্যারে আছে:

let arr = ['a', 'b', 'c'];

আসুন এই অ্যারের উপাদানগুলির উপর পুনরাবৃত্তি করি এবং সেগুলো একটি একক স্ট্রিংয়ে লিখি।

একজন নির্দিষ্ট প্রোগ্রামার ইতিমধ্যেই এই কাজটি সমাধান করেছে, কিন্তু ভুলবশত একটি for-in লুপ ব্যবহার করেছে। আসুন দেখি তারা কী পেয়েছে:

let res = ''; for (let elem in arr) { res += elem; } console.log(res); // আউটপুট দেবে '012'

সুতরাং, ফলাফল হল স্ট্রিং '012', 'abc' নয়। আসুন জেনে নেওয়া যাক কেন এটি ঘটেছে।

for-in লুপ দিয়ে অ্যারেটি পুনরাবৃত্তি করা যায় কেন? বিষয়টি হল জাভাস্ক্রিপ্টে একটি অ্যারে হল একটি অবজেক্টের নির্দিষ্ট ক্ষেত্র। তাই, এই সম্পর্কে, এটি আসলে বৈধ কোড। কিন্তু এটি এইভাবে করা উচিত নয়।

বিষয়টি হল যে for-in নির্দিষ্ট শর্তে অতিরিক্ত বৈশিষ্ট্য বাছাই করতে পারে, এবং অ্যারে উপাদান ছাড়াও, পুনরাবৃত্তির期间 আপনি পরজীবী কিছু পেতে পারেন। শুধুমাত্র for-of ব্যবহার করে অ্যারে পুনরাবৃত্তি করুন।

এখন বুঝে নেওয়া যাক কেন আমরা এমন একটি অদ্ভুত ফলাফল দেখছি। বিষয়টি হল যে for-in দিয়ে পুনরাবৃত্তি করার সময়, elem ভেরিয়েবলটি আসলে কীগুলি পাবে, এই ভেরিয়েবলের নাম বিভ্রান্তিকর হওয়া সত্ত্বেও।

আসুন যে ভুলটি করা হয়েছিল তা সংশোধন করি এবং সঠিক কোড লিখি:

let arr = ['a', 'b', 'c']; let res = ''; for (let elem of arr) { res += elem; } console.log(res); // আউটপুট দেবে 'abc'
বাংলা
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
আমরা সাইট পরিচালনা, বিশ্লেষণ এবং ব্যক্তিগতকরণের জন্য কুকি ব্যবহার করি। ডেটা প্রক্রিয়াকরণ গোপনীয়তা নীতি অনুযায়ী করা হয়।
সব গ্রহণ করুন কনফিগার করুন প্রত্যাখ্যান করুন