Array#each অ্যারের প্রতিটি উপাদানের জন্য প্রদত্ত ব্লকটি কার্যকর করে, তারপরে অ্যারেটি নিজেই প্রদান করে।
Array#map অ্যারের প্রতিটি উপাদানের জন্য প্রদত্ত ব্লকটিও কার্যকর করে, তবে একটি নতুন অ্যারে প্রদান করে যার মানগুলি ব্লকের প্রতিটি পুনরাবৃত্তির ফেরত মান।
উদাহরণ: ধরে নিন আপনার এইরকম সংজ্ঞা দেওয়া হয়েছে:
arr = ["tokyo", "london", "rio"]
তারপরে কার্যকর করার চেষ্টা করুন each:
arr.each { |element| element.capitalize }
লক্ষ্য করুন যে রিটার্ন মানটি একই অ্যারে is eachব্লকের অভ্যন্তরীণ কোডটি কার্যকর হয়ে যায়, তবে গণনা করা মানগুলি ফেরত পাওয়া যায় না; এবং কোডটির কোনও পার্শ্ব প্রতিক্রিয়া নেই বলে এই উদাহরণটি কোনও কার্যকর কাজ করে না।
বিপরীতে, অ্যারের mapপদ্ধতিকে কল করা একটি নতুন অ্যারে প্রদান করে যার উপাদানগুলি mapব্লক সম্পাদন করার প্রতিটি রাউন্ডের রিটার্ন মানগুলি :
arr.map { |element| element.capitalize }