sort মেথড
sort মেথডটি অ্যারে সাজানোর কাজ করে
অভিধানগত ক্রমে এবং ইতিমধ্যে পরিবর্তিত
অ্যারেটি ফেরত দেয়। ঐচ্ছিক প্যারামিটার হিসাবে
সাজানোর জন্য একটি কাস্টম ফাংশন নির্দিষ্ট করা যেতে পারে।
সিনট্যাক্স
javascriptঅ্যারে.sort([ফাংশন]);
উদাহরণ
চলুন একটি অ্যারে সাজাই:
javascriptlet arr = ['d', 'b', 'a', 'c'];
console.log(arr.sort());
কোড এক্সিকিউট করার ফলাফল:
javascript['a', 'b', 'c', 'd']
উদাহরণ
চলুন সংখ্যা সহ একটি অ্যারে সাজাই:
javascriptlet arr = [4, 1, 7, 2];
console.log(arr.sort());
কোড এক্সিকিউট করার ফলাফল:
javascript[1, 2, 4, 7]
উদাহরণ
চলুন অ্যারেতে সংখ্যা যোগ করি এবং এটিকে সাজাই:
javascriptlet arr = [1, 123, 2, 4, 111, 7];
console.log(arr.sort());
কোড এক্সিকিউট করার ফলাফল হিসাবে আমরা দেখতে পাব যে সংখ্যাগুলি সাজানো আছে না ঊর্ধ্বক্রমে, বরং অভিধানগত ক্রমে, অর্থাৎ, সংখ্যাগুলি একে অপরের সাথে স্ট্রিং হিসাবে তুলনা করা হয়। এক্ষেত্রে তুলনা করা হয় প্রতিটি অক্ষরের জন্য, প্রথম অক্ষরের কোড কোনো প্রতিবেশী অক্ষরের কোডের চেয়ে বড় কিনা ইত্যাদি। ফলাফল:
javascript[1, 111, 123, 2, 4, 7]
উদাহরণ
এখন চলুন একটি ফাংশন ব্যবহার করে অ্যারে সাজাই
যেখানে আমরা শর্ত লিখব -
যদি প্রথম প্যারামিটারটি দ্বিতীয়টির চেয়ে বড় হয়, তাহলে আমরা সেগুলি অদলবদল করব
(এর জন্য return-এ যেকোনো ধনাত্মক সংখ্যা লিখতে হবে)।
বিপরীত ক্ষেত্রে, অদলবদলের প্রয়োজন নেই এবং আমরা নির্দেশ করব
0 বা যেকোনো ঋণাত্মক সংখ্যা:
javascriptlet arr = [1, 123, 2, 4, 111, 7];
arr.sort(function(a, b) {
if (a > b) {
return 1;
} else {
return -1;
}
});
console.log(arr);
কোড এক্সিকিউট করার ফলাফল:
javascript[1, 2, 4, 7, 111, 123]
উদাহরণ
চলুন সুবিধার জন্য পূর্ববর্তী উদাহরণের আমাদের ফাংশনের কোডটি সংক্ষিপ্ত করি:
javascriptlet arr = [1, 123, 2, 4, 111, 7];
arr.sort(function(a, b) {
return a - b;
});
console.log(arr);
কোড এক্সিকিউট করার ফলাফল:
javascript[1, 2, 4, 7, 111, 123]
উদাহরণ
এবং এখন একটি ফাংশন ব্যবহার করে অ্যারেটি সাজাই অবরোহী ক্রমে:
javascriptlet arr = [1, 123, 2, 4, 111, 7];
arr.sort(function(a, b) {
return b - a;
});
console.log(arr);
কোড এক্সিকিউট করার ফলাফল:
javascript[123, 111, 7, 4, 2, 1]
উদাহরণ
চলুন অবজেক্টের একটি অ্যারে সাজাই
'one' কী অনুসারে ঊর্ধ্বক্রমে:
javascriptlet arr = [
{one: 1, two: 2},
{one: 7, two: 1},
{one: 3, two: 3}
];
arr.sort(function(a, b) {
return a.one - b.one;
});
console.log(arr);
কোড এক্সিকিউট করার ফলাফল:
javascript[
{one: 1, two: 2},
{one: 3, two: 3},
{one: 7, two: 1}
]
উদাহরণ
এবং এখন চলুন অবজেক্টের অ্যারেটি সাজাই
'two' কী অনুসারে:
javascriptlet arr = [
{one: 1, two: 2},
{one: 7, two: 1},
{one: 3, two: 3}
];
arr.sort(function(a, b) {
return a.two - b.two;
});
console.log(arr);
কোড এক্সিকিউট করার ফলাফল:
javascript[
{one: 7, two: 1},
{one: 1, two: 2},
{one: 3, two: 3}
]
উদাহরণ
চলুন পরীক্ষা করি sort মেথড প্রয়োগ করার পর
অ্যারে পরিবর্তিত হয়েছে কিনা:
javascriptlet arr = ['b', 'a', 'd', 'c'];
let res = arr.sort();
console.log(arr);
কোড এক্সিকিউট করার ফলাফল:
javascript['a', 'b', 'c', 'd']
আরও দেখুন
-
filterমেথড,
যা অ্যারের এলিমেন্ট ফিল্টার করতে দেয়