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

জাভাস্ক্রিপ্টে ইয়ার এবং মन्थ অনুযায়ী অ্যারে সর্ট করা


আমাদের কাছে একটি অ্যারে আছে এইরকম -

const arr = [{    year: 2020,    month: 'January' }, {    year: 2017,    month: 'March' }, {    year: 2010,    month: 'January' }, {    year: 2010,    month: 'December' }, {    year: 2020,    month: 'April' }, {    year: 2017,    month: 'August' }, {    year: 2010,    month: 'February' }, {    year: 2020,    month: 'October' }, {    year: 2017,    month: 'June' }]

আমাদের এই অ্যারেটিকে ইয়ার অনুযায়ী आरোহী ক্রমে (বাড়ানোর ক্রমে) সর্ট করতে হবে। আর যদি দুইটি অবজেক্টের ইয়ার প্রোপার্টি একই থাকে, তবে সেগুলোকে মन्थ অনুযায়ী সর্ট করতে হবে (যেন জান, তারপর ফেব, তারপর মার্চ এবংكذا)।

তাহলে এই সর্টিং সমস্যার কোড লিখি। সম্পূর্ণ কোড হলো -

উদাহরণ

const arr = [{    year: 2020,    month: 'January' }, {    year: 2017,    month: 'March' }, {    year: 2010,    month: 'January' }, {    year: 2010,    month: 'December' }, {    year: 2020,    month: 'April' }, {    year: 2017,    month: 'August' }, {    year: 2010,    month: 'February' }, {    year: 2020,    month: 'October' }, {    year: 2017,    month: 'June' }] const months = ['January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December']; const sorter = (a, b) => {    if(a.year !== b.year){       return a.year - b.year;    }else{       return months.indexOf(a.month) - months.indexOf(b.month);    }; }; arr.sort(sorter); console.log(arr);

আমরা চেক করি ইয়ারগুলো যদি আলাদা হয়, তবে শুধু ইয়ার অনুযায়ী সর্ট করি, কিন্তু যখন ইয়ারগুলো একই হয়, তবে আমরা কাস্টম months অ্যারে টি ব্যবহার করে মन्थ চেক করি এবং এইভাবে একই ইয়ার 가진 অবজেক্টগুলো মन्थ অনুযায়ী সর্ট হয়।

আউটপুট

কনসোলে আউটপুট হবে -

[    { year: 2010, month: 'January' },    { year: 2010, month: 'February' },    { year: 2010, month: 'December' },    { year: 2017, month: 'March' },    { year: 2017, month: 'June' },    { year: 2017, month: 'August' },    { year: 2020, month: 'January' },    { year: 2020, month: 'April' },    { year: 2020, month: 'October' } ]

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

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

  3. জাভাস্ক্রিপ্টে অ্যারে সর্ট করে নির্দিষ্ট এলিমেন্টকে ডিফল্ট মান হিসেবে রাখুন

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