در زبان جاوا اسکریپت متد هایی برای کار با اعداد وجود دارد که شما می توانید از آن ها هنگام کار با اعداد استفاده کنید. مقادیر اولیه (مانند 3.14 یا 2014) نمی توانند مشخصه و یا متدی داشته باشند زیرا اشیا محسوب نمی شوند. اما در جاوا اسکریپت، مشخصه ها و متدها نیز برای مقادیر اولیه در دسترس هستند، زیرا جاوا اسکریپت هنگام اجرای مشخصه ها و متدها، مقادیر اولیه را نیز بعنوان اشیا در نظر می گیرد.
قبل از مطالعه این مقاله، می توانید برای یادگیری انواع اعداد در جاوا اسکریپت به مقاله آموزش اعداد در جاوا اسکریپت مراجعه کنید.
متد ()toString
متد ()toString یک عدد را به عنوان یک رشته برمی گرداند.
تمامی متدهای عددی می توانند رو تمامی انواع اعداد به کار برده شوند (مقادیر ثابت، متغیر و یا عبارات):
متد ()toFixed
این متد رشته ای را بر می گرداند که در آن عدد با تعداد اعشار خاص نوشته شده است. مثال:
متد ()toPrecision
این متد یک رشته عددی با طول مشخص شده را بر می گرداند. طول رشته عددی در پارامتر ورودی این متد مشخص می شود. تفاوت متد ()toPrecision با متد ()toFixed این است که در متد ()toFixed تعداد رقم بعد از اعشار تعیین می گردد اما در متد ()toPrecision تعداد کل ارقام یک عدد مشخص می شود.
متد ()valueOf
متد ()valueOf عدد را بعنوان یک عدد بر می گرداند:
در جاوا اسکریپت، یک عدد می تواند یک مقدار اولیه (typeof = number) یا یک شی (typeof = object) باشد. متد ()valueOf به صورت خودکار در جاوا اسکریپت برای تبدیل کردن اشیای عددی به مقادیر اولیه به کار می رود.
هیچ لزومی ندارد که از این متد در کد خود استفاده کنید.
تبدیل متغیرها به اعداد
در جاوا اسکریپت برای تبدیل کردن متغیرها به اعداد سه متد وجود دارد:
- The Number() method
- The parseInt() method
- The parseFloat() method
این متدها، متدهای عددی نیستند، بلکه متدهای جهانی جاوا اسکریپت می باشند که یک رشته عددی را به نوع عددی تبدیل می کنند.
متدهای جهانی جاوا اسکریپت
متدهای جهانی جاوا اسکریپت می توانند در انواع دیتاهای جاوا اسکریپت استفاده شوند. این متدها، مرتبط ترین و کارآمد ترین متدها هنگام کار با اعداد می باشند:
متد ()Number
متد ()Number برای تبدیل کردن متغیرهای جاوا اسکریپت به اعداد استفاده می شود. اگر عملیات تبدیل نوع با موفقیت انجام نشود، مقدار NaN برگردانده می شود. اگر اعداد با فاصله یا space باشند هیچ مقداری برای ما برگشت داده نمی شود.
استفاده از متد ()Number در تاریخ ها
متد ()Number همچنین برای تبدیل یک تاریخ به یک عدد استفاده می شود. این عدد به صورت میلی ثانیه از تاریخ 1.1.1970 در نظر گرفته می شود :
Number(new Date("2017-09-30")); // returns 1506729600000
متد ()parseInt
متد ()parseInt یک رشته عددی را parse (تجزیه کردن) می کند و یک عدد کامل را بر می گرداند. رشته مورد نظر می تواند شامل فاصله نیز باشد اما در این صورت تنها اولین عدد برگردانده می شود. دقت کنید که اگر عملیات تبدیل نوع با موفقیت صورت نگیرد، مقدار NaN برگردانده می شود. این متد تنها قسمت صحیح عدد را برمی گرداند و از قسمت اعشاری صرف نظر می کند.
متد ()parseFloat
با استفاده از متد ()parseFloat می توان یک رشته را به یک عدد تبدیل کرد. رشته مورد نظر می تواند شامل فضا های خالی باشد. دقت داشته باشید در صورتی که اعداد با فاصله در رشته قرار بگیرند، اولین عدد برگردانده می شود . این متد بخش اعشاری عدد را نیز بر می گرداند.
مشخصه های عددی
در زبان جاوا اسکریپت مشخصه های عددی وجود دارد که شما می توانید هنگام کار با اعداد از آن ها استفاده کنید. تصویر زیر این مشخصه های عددی را نشان می دهد.
MAX_VALUE در جاوا اسکریپت
مشخصه MAX_VALUE بزرگترین عدد ممکن در جاوا اسکریپت را برمی گرداند. نحوه استفاده از این مشخصه به صورت زیر است:
;var x = Number.MAX_VALUE
MIN_VALUE در جاوا اسکریپت
مشخصه MIN_VALUE کوچکترین عدد ممکن در جاوا اسکریپت را برمی گرداند. نحوه استفاده از این مشخصه به صورت زیر است:
;var x = Number.MIN_VALUE
POSITIVE_INFINITY (مثبت بی نهایت در جاوا اسکریپت)
مقدار Infinity در دو حالت رخ می دهد:
اولین حالت زمانی رخ می دهد که مقدار ما بزرگتر از بزرگترین عدد ممکن در جاوا اسکریپت باشد.
دومین حالت تقسیم کردن هر عددی بر صفر است. این کار از نظر ریاضی نیز منطقی و مجاز نیست.
;var x = 1 / 0
NEGATIVE_INFINITY (منفی بی نهایت در جاوا اسکریپت)
مقدار Infinity- در زمانی که گذر از حد (منفی) انجام می شود برگردانده می شود.
;var x = -1 / 0
NaN در جاوا اسکریپت
در حقیقت مقدار NaN یکی از کلمات رزرو شده زبان جاوا اسکریپت است که مشخص می کند یک عدد یک مقدار قابل قبول و مجاز نیست.
(var x = 100 / "Apple"; // x will be NaN (Not a Number
مشخصه های عددی نمی توانند در متغیرها استفاده شوند و فقط می توان با استفاده از شی Number به شکل Number.MAX_VALUE به این مشخصه ها دسترسی داشت. مثال زیر نشان می دهد که استفاده از مشخصه های عددی در متغیرها باعث برگردانده شدن مقدار undefined می شود.