কম্পিউটার টিউটোরিয়াল

JavaScript Sort Array: একটি হাও-টু গাইড

আপনি JavaScript sort() মেথড ব্যবহার করতে পারেন একটি অ্যারে সর্ট করতে। sort() মেথড একটি অ্যারে আর্গুমেন্ট হিসেবে গ্রহণ করে এবং এর ভ্যালুগুলো ascending order-এ সর্ট করে। অ্যারেগুলো in place সর্ট হয় যার মানে ওরিজিনাল অ্যারে মডিফাই হয়। একটি নতুন অ্যারে তৈরি হয় না।

আপনি ডिसাইড করতে পারেন যে আপনি আপনার অ্যারেটিকে একটি নির্দিষ্ট অর্ডারে সর্ট করতে চান। উদাহরণস্বরূপ, আপনার কাছে নামের একটি লিস্ট থাকতে পারে যা আপনি অ্যালফাবেটিক্যাল অর্ডারে ইউজারকে ডিসপ্লে করতে চান।

আপনি কীভাবে অ্যারেতে এলিমেন্টগুলো সর্ট করতে চান তার উপর ডিপেন্ড করে, বিল্ট-ইন JavaScript ফাংশনগুলো সাহায্য করতে পারে। উদাহরণস্বরূপ, আপনি sort() ফাংশন ব্যবহার করতে পারেন একটি অ্যারে অ্যালফাবেটিক্যাল অর্ডারে সর্ট করতে, reverse() ফাংশন ব্যবহার করতে পারেন একটি অ্যারে রিভার্স অর্ডারে সর্ট করতে, এবং sort() ফাংশন একটি নেস্টেড ফাংশনসহ ব্যবহার করতে পারেন আপনার নিজস্ব কাস্টম সর্ট তৈরি করতে।

এই টিউটোরিয়ালে, আমরা ব্রেক ডাউন করব কীভাবে sort() এবং reverse() ব্যবহার করে JavaScript-এ সর্ট অ্যারে ফাংশন পারফর্ম করা হয়।

JavaScript sort() মেথড

JavaScript sort() মেথড একটি অ্যারেয়ের ভ্যালুগুলো পড়ে এবং সেগুলো ascending বা descending order-এ রিটার্ন করে। একটি স্ট্রিং যেটি নম্বর বা স্ট্রিং ধারণ করে সেটি সর্ট করা যায়।

নিচের সিনট্যাক্স বিবেচনা করুন:

const values = [1, 2, 8, 9, 3]; values.sort();

এই কোড আমাদের "values" লিস্ট সর্ট করে। লিস্টটি in place সর্ট হয় যার মানে আমাদের ওরিজিনাল লিস্ট মডিফাই হয়। sort() একটি লিস্টের নতুন ভার্সন তৈরি করে না।

এটি নোট করার লायक যে sort() মেথড ওরিজিনাল অ্যারে মডিফাই করে এবং এর অর্ডার পরিবর্তন করে। যদি আমরা আমাদের ওরিজিনাল অ্যারে একই রাখতে চাই, তবে আমরা sort() ফাংশন রান করে এর ভ্যালু একটি নতুন ভেরিয়েবলে স্টোর করতে পারি।

আপনি যদি sort() মেথডের কন্টেন্ট একটি নতুন ভেরিয়েবলে অ্যাসাইন করেন, ওরিজিনাল লিস্টটি এখনও পরিবর্তন হবে।

JavaScript Sort Array উদাহরণ

JavaScript-এ একটি অ্যারে সর্ট করতে, আমরা বিল্ট-ইন ডিফল্ট sort() মেথড ব্যবহার করি। এর সবচেয়ে সিম্পল ফর্মে, sort() মেথড একটি অ্যারে ascending alphabetical order-এ সর্ট করে। এখানে sort() মেথড একশনে একটি উদাহরণ:

var students = ['Alex', 'Cathy', 'Lincoln', 'Jeff']; var sorted_students = students.sort(); console.log(sorted_students); 

আমাদের কোড নিচের ফলাফল রিটার্ন করে:

["Alex", "Cathy", "Jeff", "Lincoln"]

আমাদের অ্যারে ascending order-এ সর্ট হয়েছে। আমরা sort() মেথড ব্যবহার করেছি আমাদের JavaScript ভেরিয়েবল "students" সর্ট করতে। তারপর, আমরা "students" এর ভ্যালু JavaScript কনসোলে প্রিন্ট করলাম।

JavaScript Array sort(): একটি নিউমেরিক অ্যারে অর্ডার করা

আমরা sort() মেথড ব্যবহার করতে পারি একটি न्यুমেরিক্যাল লিস্টের ভ্যালুগুলো ascending order-এ সর্ট করতে।

বলুন আমাদের কাছে স্টুডেন্ট গ্রেডের একটি লিস্ট আছে যা আমরা ascending order-এ সর্ট করতে চাই। আমরা সেটি sort() মেথড ব্যবহার করে সর্ট করতে পারি:

var grades = [67, 75, 62, 78]; grades.sort(); console.log(grades); 

আমাদের কোড থেকে আউটপুট নিচের মত:

[62, 67, 75, 78]

আমাদের অ্যারে ascending order-এ সর্ট হয়েছে! যখন আমাদের প্রোগ্রাম sort() অপারেশন শুরু করে, আমাদের অ্যারেতে এলিমেন্টগুলো তাদের ভ্যালু অনুযায়ী সর্ট হয়।

কারণ sort() একটি লিস্ট in place সর্ট করে, আমাদের sort() রেজাল্ট একটি নতুন ভেরিয়েবলে অ্যাসাইন করার প্রয়োজন নেই। আমাদের কোড নিউলি-সর্টেড "grades" অ্যারে কনসোলে প্রিন্ট করে।

JavaScript Sort Array of Objects

sort() মেথড ব্যবহার করা যায় একটি অবজেক্টের অ্যারে সর্ট করতে। উদাহরণস্বরূপ, আমাদের কাছে JSON অবজেক্টের একটি অ্যারে থাকতে পারে যেটি একটি স্টুডেন্টের নাম এবং বয়স দুটোই স্টোর করে।

এখানে একটি sort() ফাংশনের উদাহরণ যা এমন একটি অ্যারে আমাদের স্টুডেন্টদের বয়স অনুযায়ী সর্ট করবে:

var students = [ { name: "Alex", age: 16 }, { name: "Cathy", age: 14 }, { name: "Lincoln", age: 14 }, { name: "Jeff", age: 15 } ]; var sorted_students = students.sort(function(a, b) { return a.age - b.age; }); console.log(sorted_students); 

আমাদের কোড নিচের ফলাফল রিটার্ন করে:

[ { "name": "Cathy", "age": 14}, { "name": "Lincoln", "age": 14}, { "name": "Jeff", "age": 15}, { "name": "Alex", "age": 16} ]

আমাদের কোড আমাদের JSON অবজেক্টের অ্যারে রিটার্ন করলো স্টুডেন্ট বয়সের অর্ডারে।

প্রথম লাইনে, আমরা আমাদের "students" ভেরিয়েবল চারটি স্টুডেন্টের সাথে ডিক্লেয়ার করলাম। তারপর আমরা একটি ফাংশন তৈরি করলাম যা আমাদের students ভেরিয়েবলকে প্রতিটি JSON অবজেক্টে "age" ভ্যালু অনুযায়ী সর্ট করে বয়স কম্পেয়ার করে। ফাইনালি, আমাদের প্রোগ্রাম আমাদের সর্টেড লিস্ট প্রিন্ট আউট করে।

JavaScript Array sort(): রিভার্স অর্ডারে সর্ট করা

একটি বিল্ট-ইন JavaScript ফাংশনও আছে যা আপনাকে একটি অ্যারে রিভার্স অর্ডারে সর্ট করতে দেয়: reverse()।

reverse() মেথড একটি অ্যারে রিভার্স করে যাতে প্রথম এলিমেন্ট লাস্ট হয়ে যায়, এবং লাস্ট এলিমেন্ট ফার্স্ট হয়ে যায়। таким образом, এই অ্যারে অ্যালফাবেটিক্যাল ডিসেন্ডিং অর্ডারে অর্ডার করে না।

আমরা যদি প্রথমে একটি লিস্ট sort() মেথড ব্যবহার করে সর্ট করি, তবে আমরা reverse() ব্যবহার করতে পারি আমাদের অ্যারে descending order-এ দেখতে।

reverse() ফাংশন একশনে একটি উদাহরণ:

var students = ['Alex', 'Cathy', 'Lincoln', 'Jeff']; var reversed_students = students.reverse(); console.log(reversed_students); 

আমাদের কোড নিচের ফলাফল রিটার্ন করে:

["Jeff", "Lincoln", "Cathy", "Alex"]

আমরা প্রথমে আমাদের লিস্ট ascending order-এ sort() ব্যবহার করে সর্ট করলাম। তারপর, আমরা reverse() ব্যবহার করে লিস্টটি রিভার্স করলাম। আমাদের লিস্ট এখন আমাদের নামগুলো ডিসেন্ডিং অর্ডারে alphabetically দেখাচ্ছে।

reverse() ফাংশন, sort() ফাংশনের মতো, আমাদের লিস্টের অর্ডার মডিফাই করে। আমরা reverse() এর রেজাল্ট একটি নতুন ভেরিয়েবলে অ্যাসাইন করতে পারি না ওরিজিনাল অ্যারে মডিফাই না করে। আমরা এর আগে sort() মেথডের সাথে এই বিষয়ে কথা বলেছিলাম।

উপসংহার

JavaScript sort() মেথড একটি লিস্টের কন্টেন্টস অর্ডার করে ascending বা descending order-এ। sort() একটি লিস্ট in place মডিফাই করে যার মানে মেথডটি একটি নতুন লিস্ট তৈরি করে না। reverse(), sort() ব্যবহার করার পর, একটি লিস্ট descending order-এ সর্ট করে।

এই টিউটোরিয়ালে, আমরা ব্রেক ডাউন করেছি কীভাবে JavaScript-এ sort() ব্যবহার করে একটি অ্যারে সর্ট করতে হয়। আমরা নিউমেরিক্যাল অ্যারে সর্ট করা, কীভাবে অবজেক্টের অ্যারে সর্ট করা হয়, এবং reverse() ব্যবহার করে একটি অ্যারেের কন্টেন্টস রিভার্স করা আলোচনা করেছি।

টপ JavaScript লার্নিং রিসোর্স এবং অনলাইন কোর্সের অ্যাডভাইসের জন্য, আমাদের How to Learn JavaScript আর্টিকেল চেক আউট করুন।

  1. জাভাস্ক্রিপ্টে Array.prototype.sort() মেথড

  2. জাভাস্ক্রিপ্টে অ্যারেকে সর্ট অর্ডার হিসেবে ব্যবহার করা

  3. জাভাস্ক্রিপ্টে মাস-ইয়ার অনুযায়ী অ্যারে সর্ট করুন

  4. জাভাস্ক্রিপ্টে অ্যারে ইনডেক্স অনুযায়ী সর্ট এবং ম্যাপ