JavaScript Array sort()

التعريف والاستخدام

sort() تقوم الطريقة بترتيب عناصر المجموعة.

يمكن أن يكون الترتيب حسب الأبجدية أو الرقمي، وأيضًا تصاعديًا (للأعلى) أو تنازليًا (للأسفل).

بالافتراض،sort() سيقوم الطريقة بترتيب القيم كنصوص حسب الأبجدية والترتيب تصاعديًا.

هذا ينطبق على الأنواع النصية ("Apple" يظهر قبل "Banana"). ولكن إذا تم ترتيب الأرقام كنص، فإن "25" أكبر من "100" لأن "2" أكبر من "1".

لذلك،sort() يمكن أن ينتج الطريقة نتائج غير صحيحة عند ترتيب الأرقام.

يمكنك حل هذه المشكلة بتقديم "وظيفة مقارنة" (انظر أدناه "قيم المعلمات").

التعليقات:sort() يُمكن أن يُغير الطريقة الأصلية للمجموعة.

مثال

مثال 1

ترتيب مجموعة:

var fruits = ["Banana", "Orange", "Apple", "Mango"];
fruits.sort();

جرب بنفسك

مثال 2

ترتيب الأرقام في مجموعة تصاعديًا:

var points = [40, 100, 1, 5, 25, 10];
points.sort(function(a, b){return a-b});

جرب بنفسك

مثال 3

ترتيب الأرقام في مجموعة تنازليًا:

var points = [40, 100, 1, 5, 25, 10];
points.sort(function(a, b){return b-a});

جرب بنفسك

مثال 4

الحصول على أصغر قيمة في المصفوفة:

var points = [40, 100, 1, 5, 25, 10];
points.sort(function(a, b){return a-b});    // ترتيب الأرقام في المصفوفة بشكل تصاعدي
// القيمة الأولى في المصفوفة (points[0]) هي الآن أقل قيمة

جرب بنفسك

مثال 5

الحصول على أكبر قيمة في المصفوفة:

var points = [40, 100, 1, 5, 25, 10];
points.sort(function(a, b){return b-a});    // ترتيب الأرقام في المصفوفة بشكل تنازلي
// القيمة الأولى في المصفوفة (points[0]) هي الآن أعلى قيمة

جرب بنفسك

مثال 6

الحصول على أكبر قيمة في المصفوفة:

const points = [40, 100, 1, 5, 25, 10];
// ترتيب الأرقام بشكل تصاعدي:
points.sort(function(a, b){return a-b});
// points[points.length-1] = 100 (أعلى قيمة)

جرب بنفسك

مثال 7

ترتيب المصفوفة حسب ترتيب الأبجدية، ثم عكس ترتيب الترتيب (منخفض إلى مرتفع):

var fruits = ["Banana", "Orange", "Apple", "Mango"];
fruits.sort();
fruits.reverse();

جرب بنفسك

النحو

array.sort(compareFunction)

قيمة المعاملات

المعاملات الوصف
compareFunction

اختياري. تعريف دالة لتحديد ترتيب الترتيب البديل. يجب أن تعود هذه الدالة بالقيمة السلبية أو الصفر أو الإيجابية بناءً على المعاملات، مثل:

  • function(a, b){return a-b}

عند مقارنة sort() لقيمتين، يرسل القيم إلى دالة المقارنة ويقوم بترتيب القيم بناءً على القيمة التي تعود بها (سلبية، صفر، إيجابية).

مثال:

عند مقارنة 40 و100، يستدعي sort() دالة المقارنة (40, 100).

يحسب هذا الدالة 40-100 ويقوم بإرجاع -60 (قيمة سلبية).

�数ونction() سترتب 40 كأصغر من 100.

تفاصيل تقنية

القيمة المعدلة: مصفوفة Array، تحتوي على عناصر مرتبة.
إصدار JavaScript: ECMAScript 1

دعم المتصفح

كل المتصفحات تدعمها بشكل كامل sort() الطريقة:

كروم IE الحدود فايرفوكس سفاري أوبرا
كروم IE الحدود فايرفوكس سفاري أوبرا
دعم دعم دعم دعم دعم دعم

الصفحات ذات الصلة

دليل:JavaScript المصفوفة

دليل:مجموعات JavaScript باستخدام Const

دليل:طرق مجموعات JavaScript

دليل:ترتيب مجموعات JavaScript

دليل:تكرار مجموعات JavaScript

دليل:مетод reverse() لمجموعة JavaScript