আমাদের একটি ফাংশন লিখতে হবে, বলুন searchRecursively() যা একটি অ্যারে এবং একটি অনুসন্ধান ক্যোয়ারী নেয় এবং নেস্টেড অ্যারেতে সেই সার্চ কোয়েরির গণনা ফেরত দেয়।
উদাহরণস্বরূপ, যদি অ্যারেটি −
দ্বারা দেওয়া হয়const names = ["rakesh", ["kalicharan", "krishna", "rakesh", "james", ["michael", "nathan", "rakesh", "george"]]];
তারপর -
searchRecursively(names, ‘’rakesh’);
3টি ফেরত দেওয়া উচিত কারণ এটি অ্যারেতে মোট 3টি উপস্থিতি তৈরি করে৷ অতএব, আসুন এই রিকার্সিভ ফাংশনের জন্য কোড লিখি -
উদাহরণ
const names = ["rakesh", ["kalicharan", "krishna", "rakesh", "james", ["michael", "nathan", "rakesh", "george"]]]; const searchRecursively = (arr, query, count = 0, len = 0) => { if(len < arr.length){ if(Array.isArray(arr[len])){ return searchRecursively(arr[len], query, count, 0); }; if(arr[len] === query){ return searchRecursively(arr, query, ++count, ++len); }; return searchRecursively(arr, query, count, ++len); }; return count; }; console.log(searchRecursively(names, "rakesh"));
আউটপুট
কনসোলে আউটপুট হবে −
3