আমাদের একটি ফাংশন লিখতে হবে যা স্ট্রিং লিটারেলের একটি অ্যারে নিবে এবং অ্যারেতে থাকা সবচেয়ে বড় স্ট্রিংয়ের ইনডেক্স রিটার্ন করবে। স্ট্রিংয়ের দৈর্ঘ্য হিসাব করার সময় হোয়াইটস্পেস বা খালি জায়গার দৈর্ঘ্য বিবেচনা করা হবে না।
যদি দুটি বা ততোধিক স্ট্রিং একই সবচেয়ে বড় দৈর্ঘ্যের হয়, তবে আমাদের সেই স্ট্রিংগুলোর মধ্যে যেটি প্রথমে আসেছে তার ইনডেক্স রিটার্ন করতে হবে।
আমরা অ্যারে এর ওপর ইটারেট করব, প্রতিটি এলিমেন্টকে হোয়াইটস্পেস দিয়ে স্প্লিট করব, আবার জয়েন করব এবং দৈর্ঘ্য বের করব, এরপর এটি একটি অবজেক্টে স্টোর করব। এবং যখন বর্তমানে স্টোর করা দৈর্ঘ্যের চেয়ে বড় দৈর্ঘ্য পাব, তবে সেটি আপডেট করব এবং শেষে ইনডেক্স রিটার্ন করব।
উদাহরণ
const arr = ['Hello!', 'How are you', 'Can ', 'I use', 'splice method with', ' strings in Js?']; const findLongestIndex = (arr) => { const index = { '0': 0 }; const longest = arr.reduce((acc, val, index) => { const actualLength = val.split(" ").join("").length; if(actualLength > acc.length){ return { index, length: actualLength }; } return acc; }, { index: 0, length: 0 }); return longest.index; }; console.log(findLongestIndex(arr));আউটপুট
কনসোলে আউটপুট হবে -
4