Number.prototype.toExponential()
الدالة Number.prototype.toExponential()
تُعيد سلسلةً نصيةً تُمثِّل العدد في الشكل العلمي.
البنية العامة
numObj.toExponential([fractionDigits])
fractionDigits
وسيطٌ اختياريٌ يُمثِّل عدد الأرقام بعد الفاصلة العشرية، والسلوك الافتراضي هو استخدام أيّ عدد يلزم من الأرقام بعد الفاصلة العشرية لتحديد قيمة العدد بدقة.
القيمة المعادة
سلسلة نصيّة تُمثِّل الكائن Number
بالشكل العلمي مع استخدام رقم واحد قبل الفاصلة العشرية، وسيُقرّب الناتج حسب قيمة fractionDigits
.
الاستثناءات
RangeError
سيرمى هذا الاستثناء إذا كانت قيمة الوسيط fractionDigits
كبيرةً جدًا أو صغيرةً جدًا؛ والقيم بين 0 و 20 لن تُسبِّب برمي الخطأ RangeError
.
TypeError
سيرمى هذا الاستثناء إذا استدعيت الدالة على كائنٍ ليس من النوع Number
.
الوصف
إذا لم تُحدَّد قيمة للوسيط fractionDigits
فسيكون عدد الأرقام بعد الفاصلة العشرية مساويًا لعدد الأرقام اللازمة لتمثيل العدد بدقة.
إذا أردت استخدام الدالة toExponential()
للقيم العددية الأوليّة التي لا تملك فاصلةً عشريةً، فاترك فراغًا (أو أكثر) قبل النقطة التي تسبق استدعاء الدالة لمنع تفسير تلك النقطة على أنها فاصلة عشرية.
إذا امتلك العدد أرقامًا أكثر من قيمة الوسيط fractionDigits
، فسيُقرّب العدد إلى أقرب قيمة يمكن تمثيلها بعدد الأرقام المُحدَّد عبر قيمة الوسيط fractionDigits
. انظر إلى النقاش حول التقريب الموجود في وصف الدالة toFixed()
، فهو ينطبق أيضًا على الدالة toExponential()
.
أمثلة
var numObj = 77.1234;
console.log(numObj.toExponential()); // 7.71234e+1
console.log(numObj.toExponential(4)); // 7.7123e+1
console.log(numObj.toExponential(2)); // 7.71e+1
console.log(77.1234.toExponential()); // 7.71234e+1
console.log(77 .toExponential()); // 7.7e+1
دعم المتصفحات
الميزة | Chrome | Firefox | Internet Explorer | Opera | Safari |
---|---|---|---|---|---|
الدعم الأساسي | نعم | نعم | نعم | نعم | نعم |
مصادر ومواصفات
- مسودة المعيار ECMAScript Latest Draft.
- معيار ECMAScript 2015 (6th Edition).
- معيار ECMAScript 5.1.
- معيار ECMAScript 3rd Edition.