Number.prototype.toFixed()
الدالة Number.prototype.toFixed()
تُعيد سلسلةً نصيةً تُمثِّل العدد مع وضع فاصلة عشرية فيه.
البنية العامة
numObj.toFixed([digits])
digits
وسيطٌ اختياريٌ يُمثِّل عدد الأرقام بعد الفاصلة العشرية، وإذا لم تُحدَّد قيمة هذا الوسيط فستُعدّ على أنها 0.
القيمة المعادة
سلسلة نصيّة تُمثِّل الكائن Number
مع استخدام فاصلة عشرية (ويسمى هذا الشكل بالمصطلح fixed-point notation).
الاستثناءات
RangeError
سيرمى هذا الاستثناء إذا كانت قيمة الوسيط digits
كبيرةً جدًا أو صغيرةً جدًا؛ والقيم بين 0 و 100 لن تُسبِّب برمي الخطأ RangeError
.
TypeError
سيرمى هذا الاستثناء إذا استدعيت الدالة على كائنٍ ليس من النوع Number
.
الوصف
ستُعيد الدالة toFixed()
تمثيلًا نصيًّا للكائن numObj
الذي لا يستخدم الشكل العلمي (exponential notation) ويُحدَّد عدد الأرقام بعد الفاصلة العشرية بالقيمة digits
.
سيقرَّب العدد إن كان ذلك ضروريًا، وستُضاف أصفاء إلى الجزء العشري من الرقم إن كان ذلك ضروريًا (عند تحديد عدد الأرقام بعد الفاصلة).
إذا كانت قيمة numObj
أكبر من 1e+21
، فستستدعي هذه الدالةُ الدالةَ Number.prototype.toString()
وتُعيد سلسلةً نصيةً لها الشكل العلمي (exponential notation).
أمثلة
var numObj = 12345.6789;
numObj.toFixed(); // '12346': لاحظ عدم وجود جزء عشري
numObj.toFixed(1); // '12345.7': لاحظ التقريب
numObj.toFixed(6); // '12345.678900': لاحظ الأصفار الإضافة
(1.23e+20).toFixed(2); // '123000000000000000000.00'
(1.23e-10).toFixed(2); // '0.00'
2.34.toFixed(1); // '2.3'
2.35.toFixed(1); // '2.4'. لاحظ أنَّ التقريب إلى الرقم الأكبر
-2.34.toFixed(1); // -2.3 (بسبب أولوية المعاملات)
(-2.34).toFixed(1); // '-2.3' (...ما لم تستخدم الأقواس)
دعم المتصفحات
الميزة | Chrome | Firefox | Internet Explorer | Opera | Safari |
---|---|---|---|---|---|
الدعم الأساسي | نعم | نعم | نعم | نعم | نعم |
مصادر ومواصفات
- مسودة المعيار ECMAScript Latest Draft.
- معيار ECMAScript 2015 (6th Edition).
- معيار ECMAScript 5.1.
- معيار ECMAScript 3rd Edition.