JavaScript Tutorials

إتقان تنسيق الأعداد في جافا سكريبت

Spread the love

إتقان تنسيق الأعداد في جافا سكريبت أمر ضروري لإنشاء تطبيقات سهلة الاستخدام وجذابة بصريًا. سواء كنت تتعامل مع العملات أو النسب المئوية أو مجموعات البيانات العددية الكبيرة، فإن التنسيق الصحيح يعزز القراءة بشكل كبير ويحسن تجربة المستخدم بشكل عام. يستكشف هذا الدليل تقنيات متنوعة، بدءًا من الوظائف المدمجة البسيطة إلى المكتبات القوية، لمساعدتك في اختيار النهج الأفضل لاحتياجاتك المحددة.

جدول المحتويات

تنسيق يعتمد على المنطقة اللغوية باستخدام toLocaleString()

طريقة toLocaleString() هي الحل الأمثل للتنسيق الحساس للمنطقة اللغوية للأعداد. تتكيف تلقائيًا مع لغة المستخدم وإعداداته الإقليمية، مما يضمن عرضًا متسقًا عبر المناطق اللغوية المختلفة. وهذا يتعامل مع جوانب مهمة مثل الفواصل العشرية وآلاف الفواصل، ورموز العملات، وحتى أنماط تجميع الأعداد.


const number = 1234567.89;

// تنسيق المنطقة الافتراضية
console.log(number.toLocaleString()); // الإخراج (يختلف حسب المنطقة اللغوية): 1,234,567.89

// منطقة لغوية محددة (مثل، الألمانية)
console.log(number.toLocaleString('de-DE')); // الإخراج: 1.234.567,89

// تنسيق العملة
console.log(number.toLocaleString('en-US', { style: 'currency', currency: 'USD' })); // الإخراج: $1,234,567.89

// تنسيق النسبة المئوية
console.log((0.75).toLocaleString('en-US', { style: 'percent' })); // الإخراج: 75%

التحكم في المنازل العشرية باستخدام toFixed()

للحصول على تحكم دقيق في عدد المنازل العشرية، استخدم طريقة toFixed(). يقوم هذا بتدوير الرقم إلى الدقة المحددة. تذكر أن toFixed() تُرجع سلسلة نصية.


const number = 123.456789;

console.log(number.toFixed(0)); // الإخراج: 123
console.log(number.toFixed(2)); // الإخراج: 123.46
console.log(number.toFixed(5)); // الإخراج: 123.45679

تحديد الدقة باستخدام toPrecision()

توفر طريقة toPrecision() نهجًا مختلفًا، حيث تتحكم في العدد الإجمالي للأرقام الهامة. هذا مفيد بشكل خاص عند التعامل مع أعداد ذات أحجام متفاوتة.


const number = 12345.6789;

console.log(number.toPrecision(3)); // الإخراج: 1.23e+4
console.log(number.toPrecision(5)); // الإخراج: 12346
console.log(number.toPrecision(8)); // الإخراج: 12345.6789

تنسيق متقدم باستخدام Intl.NumberFormat

للحصول على تحكم أكثر دقة وميزات تتجاوز toLocaleString()، يوفر كائن Intl.NumberFormat خيارات تخصيص محسّنة. يمكنك تعيين الحد الأدنى والحد الأقصى للأرقام الهامة، واستخدام طرق تقريب مختلفة، وأكثر من ذلك.


const number = 12345.67;

const formatter = new Intl.NumberFormat('en-US', {
  minimumSignificantDigits: 2,
  maximumSignificantDigits: 4
});

console.log(formatter.format(number)); // الإخراج: 12,350

الاستفادة من المكتبات للتنسيق المعقد

في حالات التنسيق شديدة التخصيص أو المعقدة، ضع في اعتبارك استخدام مكتبة جافا سكريبت مخصصة مثل numeral.js. توفر هذه المكتبات ميزات متقدمة مثل تنسيقات الأعداد المخصصة، والاختصارات (مثل، 1k، 1M)، وأكثر من ذلك، مما يبسط مهام التنسيق المعقدة.

من خلال فهم هذه الطرق المختلفة واختيار الأداة المناسبة للمهمة، يمكنك ضمان عرض أعدادك بوضوح واتساق، بطريقة تعزز تجربة المستخدم.

اترك تعليقاً

لن يتم نشر عنوان بريدك الإلكتروني. الحقول الإلزامية مشار إليها بـ *