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

জাভাস্ক্রিপ্টে দুটি প্রপার্টি দিয়ে অবজেক্টের অ্যারে সর্ট করা


মান লজিয়ে, আমাদের নিচের মতো একটি অবজেক্টের অ্যারে আছে −

const arr = [
  { resVal: "25FA15", resFlow: 49, resName: "Rendimiento Tri-Seal  Completo", resPhoto: "Tri-Sealseries.png", resHP: 1.5 },
  { resVal: "25FA2", resFlow: 52, resName: "Rendimiento Tri-Seal  Completo", resPhoto: "Tri-Sealseries.png", resHP: 2 },
  { resVal: "45FA2", resFlow: 53, resName: "Rendimiento Hi-Cap  Completo", resPhoto: "HighCapseries.png", resHP: 2 },
  { resVal: "35FA2", resFlow: 59, resName: "Rendimiento Hi-Cap  Completo", resPhoto: "HighCapseries.png", resHP: 2 }
];

আমাদের একটি জাভাস্ক্রিপ্ট ফাংশন লিখতে হবে যা এমন একটি অবজেক্টের অ্যারে নেয়। ফাংশনটি এই অ্যারে-কে দুটি ভিন্ন প্রপার্টি অনুযায়ী সর্ট করবে −

  • উচ্চতর "resFlow" মান দিয়ে সর্ট,
  • কিন্তু নিম্নতম "resHP" মান দিয়ে।

অ্যাপ্রোচ

নির্দিষ্ট ক্রমে কী এবং তাদের সর্ট অর্ডারের জন্য চেইন্ড অ্যাপ্রোচ ব্যবহার করা হয়েছে।

অ্যারে-টি নিচের প্রপার্টিগুলো অনুযায়ী সর্ট হয় −

  • resHP, आरোহী ক্রমে এবং
  • resFlow, অবরোহী ক্রমে।

এটি ডেল্টা ক্যালকুলেট করে কাজ করে যা দুটি অবজেক্টের সম্পর্ক প্রতিফলিত করে। যদি মান শূন্য হয়, তবে দুটি মান সমান এবং পরবর্তী ডেল্টা ক্যালকুলেট করে রিটার্ন করা হয়।

উদাহরণ

এটির কোড হবে −

const arr = [
  { resVal: "25FA15", resFlow: 49, resName: "Rendimiento Tri-Seal  Completo", resPhoto: "Tri-Sealseries.png", resHP: 1.5 },
  { resVal: "25FA2", resFlow: 52, resName: "Rendimiento Tri-Seal  Completo", resPhoto: "Tri-Sealseries.png", resHP: 2 },
  { resVal: "45FA2", resFlow: 53, resName: "Rendimiento Hi-Cap  Completo", resPhoto: "HighCapseries.png", resHP: 2 },
  { resVal: "35FA2", resFlow: 59, resName: "Rendimiento Hi-Cap  Completo", resPhoto: "HighCapseries.png", resHP: 2 }
];
const sortByTwo = (arr = []) => {
  arr.sort((a, b) => {
    return a.resHP - b.resHP || b.resFlow - a.resFlow;
  });
};
sortByTwo(arr);
console.log(arr);

আউটপুট

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

[
  {
    resVal: '25FA15',
    resFlow: 49,
    resName: 'Rendimiento Tri-Seal Completo',
    resPhoto: 'Tri-Sealseries.png',
    resHP: 1.5
  },
  {
    resVal: '35FA2',
    resFlow: 59,
    resName: 'Rendimiento Hi-Cap Completo',
    resPhoto: 'HighCapseries.png',
    resHP: 2
  },
  {
    resVal: '45FA2',
    resFlow: 53,
    resName: 'Rendimiento Hi-Cap Completo',
    resPhoto: 'HighCapseries.png',
    resHP: 2
  },
  {
    resVal: '25FA2',
    resFlow: 52,
    resName: 'Rendimiento Tri-Seal Completo',
    resPhoto: 'Tri-Sealseries.png',
    resHP: 2
  }
]

  1. জাভাস্ক্রিপ্টে অবজেক্টের অ্যারেতে প্রোপার্টি অ্যাক্সেস করার পদ্ধতি

  2. জাভাস্ক্রিপ্টে দুটি অবজেক্টের প্রপার্টি ডাইনামিক্যালি মার্জ করা

  3. জাভাস্ক্রিপ্ট - অ্যারে অবজেক্টের length প্রোপার্টি

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