توضیح:
این تابع عدد شما را به رشته تبدیل میکند.
این تابع همانطور که از نامش مشخص است دارای دقت بالا است.
این تابع براساس پارامتری که در قالب عدد دریافت میکند عدد نهایی را با طول مشخص برگشت میدهد.
شمارش این تابع چه عدد صحیح باشد چه اعشاری از سمت چپ عدد است.
در صورتی که پارامتری در نظر گرفته نشود
اگر عدد صحیح باشد
وارد کردن پارامتر برای این متد اختیاری است. در صورت وارد نکردن پارامتر عدد را همانطور که وجود دارد نمایش می دهد.
مثال:
1 2 3 4 5 |
(123).toPrecision(); //123 (12.344).toPrecision(); //12.344 |
اگر عدد اعشاری باشد
در اعداد اعشاری در صورتی که بعد از علامت اعشار و در انتها ۰ به هر تعداد قرار داده شده باشد آنها را حذف می کند.
مثال:
1 2 |
(12.30000000000).toPrecision(); //12.3 |
در صورتی که پارامتری در نظر گرفته شود
اگر عدد صحیح باشد
در صورتی که برای متد پارامتری در نظر گرفته شود و عدد یک مقدار صحیح باشد، عدد وارد شده پارامتر اگر کمتر از رقم عدد موردنظر باشد بعد از رقم نخست یک (.) گذاشته و مابقی اعداد باقیمانده را بصورت عدد نمایی نمایش می دهد.
مثال:
1 2 3 4 5 |
(123).toPrecision(1); //1e+2 (123).toPrecision(2); 1.2e+2 |
اگر اولین رقم عدد باقیمانده که قرار است حذف شود ۵ یا بزرگتر از ۵ باشد به عدد قبلی خود اضافه می شود.
مثال:
1 2 |
(126).toPrecision(2); //1.3e+2 |
اگر عدد وارد شده پارامتر بزرگتر از رقم عدد موردنظر باشد بعد آخرین رقم یک (.) گذاشته و مابقی اعداد باقیمانده را ۰ وارد می کند.
مثال:
1 2 |
(152).toPrecision(5); 152.00 |
اگر عدد اعشاری باشد
در صورتی که برای متد پارامتری در نظر گرفته شود و عدد یک مقدار اعشاری باشد، عدد وارد شده پارامتر اگر کمتر از رقم عدد موردنظر باشد از سمت چپ شمارش کرده و به تعداد پارامتر نگه داشته و مابقی را حذف می کند.
مثال:
1 2 |
(1.22).toPrecision(2); //1.2 |
اگر اولین رقم اعداد که قرار است حذف شوند ۵ یا بزرگتر از ۵ باشد به آخرین عدد باقیمانده یک رقم اضافه می شود.
مثال:
1 2 |
(1.52).toPrecision(1); //2 |
در صورتی که پارامتر وارد شده بزرگتر از رقم وارد شده باشد از سمت چپ شمارش کرده و به تعداد رقم های باقیمانده در انتها عدد ۰ قرار می دهد.
مثال:
1 2 |
(1.52).toPrecision(5); //1.5200 |
خلاصه:
در صورتی که عدد صحیح باشد | در صورتی که عدد اعشاری باشد |
---|---|
بدون پارامتر:
عدد را همانطور نمایش می دهد |
بدون پارامتر:
عدد را همانطور نمایش می دهد اگر عدد ۰ در انتهای اعشار باشد حذف می کند |
با پارامتر:
اگر پارامتر کمتر از تعداد رقم عدد باشد: از سمت چپ به تعداد یک رقم اعشار قرار داده و شمارش کرده و علامت عدد نمایی را به تعداد رقم های بعد از اعشار نمایش می دهد اگر پارامتر بیشتر از تعداد رقم عدد باشد: بعد آخرین رقم یک (.) گذاشته و مابقی اعداد باقیمانده را ۰ وارد می کند. |
با پارامتر:
اگر پارامتر کمتر از تعداد رقم عدد باشد: از سمت چپ شمارش کرده و مابقی اعداد باقیمانده را حذف می کند.در صورت مساوی یا بزرگ بودن اولین رقم حذف شده از عدد ۵ به آخرین رقم باقیمانده یک رقم اضافه می کند. اگر پارامتر بیشتر از تعداد رقم عدد باشد: در صورت بزرگتر بودن پارامتر وارد شده در انتها ۰ اضافه می کند |
نحوه نوشتن:
1 |
number.toPrecision(x); |
پارامترها:
- مقدار x: یک مقدار عددی که مشخص کننده طول عدد بازگشتی است. (اختیاری)
مقدار بازگشت:
یک مقدار رشته ای که عدد را با طول مشخص برگشت میدهد.
نسخه پشتیبانی مرورگرها:
مرورگر Chrome | مرورگر Firefox | مرورگر IE | مرورگر Edge | مرورگر Safari | مرورگر Opera |
---|---|---|---|---|---|
همه نسخه ها | همه نسخه ها | همه نسخه ها | همه نسخه ها | همه نسخه ها | همه نسخه ها |
مثال:
1 2 3 |
let num = 13.3714; let n = num.toPrecision(2); //13 |
1 2 3 4 5 6 7 8 9 |
let num = 0.001658853; num.toPrecision(2); //0.0017 num.toPrecision(3); //0.00166 num.toPrecision(10); //0.001658853000 |
1 2 3 4 5 6 7 8 9 |
let num = 13.3714; num.toPrecision(2); //13 num.toPrecision(3); //13.4 num.toPrecision(10); //13.37140000 |
1 2 3 |
let num = 13.3714; num.toPrecision(); //13.3714 |