সমস্যা
আমাদের একটি জাভাস্ক্রিপ্ট ফাংশন লিখতে হবে যা উপাদানের একটি নেস্টেড অ্যারে নেয় এবং অ্যারেতে উপস্থিত উপাদানগুলির গভীর গণনা ফেরত দেয়৷
ইনপুট
const arr = [1, 2, [3, 4, [5]]];
আউটপুট
const output = 7;
কারণ লেভেল 1-এর উপাদানগুলি হল 2, স্তর 2-এর উপাদানগুলি হল 2 এবং স্তর 3-এর উপাদানগুলি হল 1, তাই গভীর গণনা হল 7৷
উদাহরণ
নিম্নলিখিত কোড -
const arr = [1, 2, [3, 4, [5]]]; const deepCount = (arr = []) => { return arr .reduce((acc, val) => { return acc + (Array.isArray(val) ? deepCount(val) : 0); }, arr.length); }; console.log(deepCount(arr));
কোড ব্যাখ্যা
আমরা অ্যারের উপর পুনরাবৃত্তি করার জন্য Array.prototype.reduce() পদ্ধতি ব্যবহার করেছি এবং যদি কোনো পুনরাবৃত্তিতে আমরা একটি নেস্টেড অ্যারের সম্মুখীন হই, আমরা পুনরাবৃত্তভাবে আমাদের ফাংশনকে ডাকতাম।
আউটপুট
7