متدهای داده‌های عددی در جاوااسکریپت

از ویکی کد
پرش به ناوبری پرش به جستجو
دورهٔ آموزشی جاوااسکریپت
Javascript.jpg
جاوااسکریپت
موارد آموزشی
۱آموزش جاوااسکریپت
۲مقدمه‌ای بر جاوااسکریپت
۳قوانین و اصول اولیه زبان جاوااسکریپت
۴خروجی جاوااسکریپت
۵عبارت‌ها در جاوااسکریپت
۶شیوهٔ نوشتن دستورات در جاوااسکریپت
۷نظرات یا کامنت‌ها (Comments) در جاوااسکریپت
۸متغیرها در جاوااسکریپت
۹عملگرهای جاوااسکریپت
۱۰عملگرهای ریاضی در جاوااسکریپت
۱۱عملگرهای مقداردهی در جاوااسکریپت
۱۲انواع داده‌ها در جاوااسکریپت
۱۳توابع در جاوااسکریپت
۱۴اشیاء (object) در جاوااسکریپت
۱۵رویدادها در جاوااسکریپت
۱۶رشته‌های متنی (string) در جاوااسکریپت
۱۷متدهای نوع داده متنی یا رشته‌ای در جاوااسکریپت
۱۸اعداد در جاوااسکریپت
۱۹متدهای داده‌های عددی در جاوااسکریپت
۲۰آرایه‌ها در جاوااسکریپت
۲۱متدهای آرایه در جاوااسکریپت
۲۲مرتب‌سازی آرایه‌ها در جاوااسکریپت
۲۳متدهای پیمایش آرایه در جاوااسکریپت
۲۴اشیاء تاریخ و زمان در جاوااسکریپت
۲۵فرمت‌های تاریخ و زمان در جاوااسکریپت
۲۶متدهای دریافت تاریخ و زمان در جاوااسکریپت
۲۷متدهای تنظیم زمان و تاریخ در جاوااسکریپت
۲۸شی ریاضی (Math) در جاوااسکریپت
۲۹ایجاد عدد تصادفی در جاوااسکریپت
۳۰مقادیر بولین (Booleans) در جاوااسکریپت
۳۱عملگرهای منطقی و مقایسه‌ای در جاوااسکریپت
۳۲ساختار if else و else if در جاوااسکریپت
۳۳تکه کد Switch در جاوا اسکریپت
۳۴حلقه For در جاوااسکریپت
۳۵حلقه While در جاوااسکریپت
۳۶کلمات کلیدی Break و Continue در جاوااسکریپت
۳۷تبدیل نوع داده‌ها در جاوااسکریپت
۳۸عملیات‌های بیتی در جاوااسکریپت
۳۹عبارات با قاعده در جاوااسکریپت
۴۰خطاها در جاوااسکریپت - رخ دادن خطا و رفع آن
۴۱Scope در جاوااسکریپت
۴۲Hoisting یا جا به جایی کدها در جاوااسکریپت
۴۳استفاده از مد یا حالت سخت‌گیرانه (use strict) در جاوااسکریپت
۴۴کلمه کلیدی This در جاوااسکریپت
۴۵کلمه کلیدی Let در جاوااسکریپت
۴۶ثابت‌ها در جاوااسکریپت
۴۷تعریف توابع به صورت پیکان
۴۸کلاس‌ها در جاوااسکریپت
۴۹اشکال‌زدایی در جاوااسکریپت
۵۰راهنمای استایل و استانداردهای کدنویسی در جاوااسکریپت
۵۱بهترین تمرینات جاوااسکریپت
۵۲اشتباهات رایج در برنامه‌نویسی جاوااسکریپت
۵۳کارایی در جاوااسکریپت
۵۴کلمات رزرو شده در جاوااسکریپت
۵۵ورژن‌های جاوااسکریپت
۵۶ECMAScript 5 - JavaScript 5
۵۷ECMAScript 6 - ECMAScript 2015
۵۸جیسون (JSON) در جاوااسکریپت
فرم‌ها
۱فرم‌ها در جاوااسکریپت
۲API ارزشیابی در جاوااسکریپت
اشیاء (object) در جاوااسکریپت
۱تست
۲تست
۳تست
۴تست
۵تست
۶تست
۷تست
JS Functions
۱تست
۲تست
۳تست
۴تست
۵تست
۶تست
JS HTML DOM
۱تست
۲تست
۳تست
۴تست
۵تست
۶تست
۷تست
۸تست
۹تست
۱۰تست
۱۱تست
۱۲تست
۱۳تست

متدهای داده‌های عددی به شما کمک می‌کند تا با اعداد کار کنید. [۱]

متدها و ویژگی‌های اعداد

داده‌های اصلی یا (به انگلیسی: Primitive) (مانند ۳٫۱۴ یا ۲۰۱۴)، نمی‌توانند ویژگی یا متدی داشته باشند، (زیرا که آنها اشیاء نیستند).

اما با جاوااسکریپت، متدها و ویژگی‌ها، حتی برای داده‌های اصلی یا primitive در دسترس هستند، زیرا جاوااسکریپت مقادیر یا داده‌های اصلی primitive را در هنگام اجرای متدها و ویژگی‌ها به عنوان شیء در نظر می‌گیرد.

متد ()toString

متد​toString()​یک عدد را به عنوان یک رشتهٔ متنی بازمی‌گرداند.

تمامی متدهای داده‌های عددی می‌توانند برای هر نوع از اعداد استفاده شوند (عددهای ساده، متغیرها یا عبارت‌ها):

مثال

var x = 123;
x.toString();            // returns 123 from variable x
(123).toString();        // returns 123 from literal 123
(100 + 23).toString();   // returns 123 from expression 100 + 23

متد ()toExponential

متد​toExponential()​یک رشتهٔ متنی شامل یک عدد که گرد شده‌است و به صورت عدد علمی نوشته شده‌است را به عنوان خروجی بازمی‌گرداند.

یک پارامتر تعداد کاراکترهای پشت اعشار را مشخص می‌کند:

مثال

var x = 9.656;
x.toExponential(2);     // returns 9.66e+0
x.toExponential(4);     // returns 9.6560e+0
x.toExponential(6);     // returns 9.656000e+0

این پارامتر اختیاری است و اجباری نیست. اگر شما آن را ننویسید، جاوااسکریپت عدد را گرد نمی‌کند.

متد ()toFixed

متد​toFixed()​یک رشتهٔ متنی را که شامل یک عدد با تعداد به خصوصی از اعشار است را بازمی‌گرداند:

مثال

var x = 9.656;
x.toFixed(0);           // returns 10
x.toFixed(2);           // returns 9.66
x.toFixed(4);           // returns 9.6560
x.toFixed(6);           // returns 9.656000


متد ()toPrecision

متد​toPrecision()​یک رشتهٔ متنی شامل یک عدد با یک طول به خصوص را برمی‌گرداند.

مثال

var x = 9.656;
x.toPrecision();        // returns 9.656
x.toPrecision(2);       // returns 9.7
x.toPrecision(4);       // returns 9.656
x.toPrecision(6);       // returns 9.65600

متد ()valueof

متد​valueOf()​یک عدد را به عنوان یک عدد بازمی‌گرداند.

مثال

var x = 123;
x.valueOf();            // returns 123 from variable x
(123).valueOf();        // returns 123 from literal 123
(100 + 23).valueOf();   // returns 123 from expression 100 + 23

در جاوااسکریپت، یک عدد می‌تواند از نوع اصلی (به انگلیسی: primitive) باشد (یعنی زمانی که از عملگر typeof برای آن عدد استفاده کردیم خروجی این عملگر مقدار number باشد) یا می‌تواند از نوع شیء باشد (یعنی زمانی که از عملگر typeof برای آن عدد استفاده کردیم مقدار خروجی این عملگر object باشد).

از متد​valueOf()​در درون جاوااسکریپت برای تبدیل اشیای عددی به نوع اصلی (به انگلیسی: primitive) استفاده می‌شود.

هیچ دلیلی وجود ندارد که از آن در کدهایتان استفاده کنید.


تبدیل متغیرها به اعداد

در متغیر ۳ متد وجود دارد که می‌توان از آن‌ها برای تبدیل متغیرها به اعداد استفاده کرد:

  • متد​Number()​
  • متد​parseInt()​
  • متد​parseFloat()​

این متدها متدهای عددی جاوااسکریپت نیستند، اما متدهای کلی (به انگلیسی: global) در جاوااسکریپت هستند.

متدهای کلی (به انگلیسی: Global) در جاوااسکریپت

متدهای global (به فارسی: کلی) را می‌توان بر روی تمامی انواع داده‌ها در جاوااسکریپت استفاده کرد.

زمانی که شما با اعداد کار می‌کنید، برخی از این متدها پرکاربرد هستند:

متد توضیحات
Number() یک عدد را به عنوان آرگومان ورودی دریافت و آن را تبدیل می‌کند.
parseFloat() یک عدد را به عنوان آرگومان ورودی دریافت و آن را یک عدد اعشاری را به خروجی برمی‌گرداند.
parseInt() یک عدد را به عنوان آرگومان ورودی دریافت و آن را به یک عدد صحیح تبدیل می‌کند.

متد ()Number

متد​()Number​را می‌توان برای تبدیل متغیرها در جاوااسکریپت به اعداد استفاده کرد:

مثال

Number(true);          // returns 1
Number(false);         // returns 0
Number("10");          // returns 10
Number("  10");        // returns 10
Number("10  ");        // returns 10
Number(" 10  ");       // returns 10
Number("10.33");       // returns 10.33
Number("10,33");       // returns NaN
Number("10 33");       // returns NaN
Number("John");        // returns NaN


استفاده متد ()Number بر روی تاریخ‌ها

از متد​()Number​می‌توان برای تبدیل یک تاریخ به یک عدد هم استفاده کرد:

مثال

Number(new Date("2017-09-30"));    // returns 1506729600000


متد ()parseInt

متد​parseInt()​یک رشته را دریافت می‌کند و یک عدد را بازمی‌گرداند. فضای خالی در این متد قابل استفاده است. اما در خروجی تنها عدد اول تبدیل می‌شود:

مثال

parseInt("10");         // returns 10
parseInt("10.33");      // returns 10
parseInt("10 20 30");   // returns 10
parseInt("10 years");   // returns 10
parseInt("years 10");   // returns NaN

اگر یک عدد تبدیل نشود، مقدار​NaN​(یک عدد نیست) به عنوان خروجی بازگردانده می‌شود.

متد ()parseFloat

متد​parseFloat()​یک رشته را به یک عدد تبدیل می‌کند و آن عدد را بازمی‌گرداند. از فضای خالی در این متد می‌توان استفاده کرد. تنها عدد اول تبدیل شده و به خروجی بازگردانده می‌شود:

مثال

parseFloat("10");        // returns 10
parseFloat("10.33");     // returns 10.33
parseFloat("10 20 30");  // returns 10
parseFloat("10 years");  // returns 10
parseFloat("years 10");  // returns NaN

اگر یک عدد را نتوان تبدیل کرد، مقدار​NaN​(یک عدد نیست) بازگردانده می‌شود.

ویژگی‌های اعداد

ویژگی توضیحات
MAX_VALUE بزرگترین عدد ممکنه در جاوااسکریپت را بازمی‌گرداند.
MIN_VALUE کوچکترین عدد ممکنه در جاوااسکریپت را بازمی‌گرداند.
POSITIVE_INFINITY به معنای وجود مقدار بی‌نهایت یا Infinity مثبت می‌باشد.
NEGATIVE_INFINITY به معنای وجود مقدار بی‌نهایت یا Infinity منفی می‌باشد.
NaN به معنای مقدار "یک عدد نیست " می‌باشد.

مقادیر MAX_VALUE و MIN_VALUE در جاوااسکریپت

ویژگی​MAX_VALUE​بزرگترین عدد ممکنه در جاوااسکریپت را بازمی‌گرداند.

مثال

var x = Number.MAX_VALUE;

ویژگی​MIN_VALUE​کوچکترین عدد ممکنه در جاوااسکریپت را بازمی‌گرداند.

مثال

var x = Number.MIN_VALUE;

مقدار بی‌نهایت (به انگلیسی: POSITIVE_INFINITY) مثبت در جاوااسکریپت

مثال

var x = Number.POSITIVE_INFINITY;

مقدار​POSITIVE_INFINITY​زمانی بازگردانده می‌شود که​overflow​مثبت داشته باشیم:

مثال

var x = 1 / 0;

مقدار بی‌نهایت (NEGATIVE_INFINITY) منفی در جاوااسکریپت

مثال

var x = Number.NEGATIVE_INFINITY;

​NEGATIVE_INFINITY​زمانی بازگردانده می‌شود که​overflow​منفی داشته باشیم:

مثال

var x = -1 / 0;

کلمهٔ کلیدی NaN - یک عدد نیست در جاوااسکریپت

مثال

var x = Number.NaN;

var x = Number.NaN;

​NaN​یک کلمهٔ رزرو شده در جاوااسکریپت است که مشخص می‌کند یک عدد، مطابق قوانین اعداد در جاوااسکریپت عدد صحیحی نیست.

زمانی که تلاش کنید که عملیات‌های ریاضی را با رشته‌های غیر عددی انجام دهید آنگاه​NaN​(یک عدد نیست) به عنوان نتیجه بازگردانده می‌شود:

مثال

var x = 100 / "Apple";  // x will be NaN (Not a Number)

ویژگی‌های داده‌های عددی را نمی‌توان برای متغیرها استفاده کرد

ویژگی‌های اعداد مربوط به شیء اعداد جاوااسکریپت است که، Number یا اعداد نامیده می‌شود.

این ویژگی‌ها فقط به صورت​Number.MAX_VALUE​قابل دسترسی خواهند بود.

اگر ویژگی‌ها را به صورت​myNumber.MAX_VALUE​که عبارت myNumber در اینجا یک متغیر، عبارت یا یک مقدار است استفاده کنیم مقدار​undefined​به عنوان خروجی بازگردانده می‌شود:

مثال

var x = 6;
var y = x.MAX_VALUE;    // y becomes undefined


مرجع کامل برای نوع دادهٔ عددی در جاوااسکریپت

برای مشاهده یک مرجع کامل در مورد داده‌های عددی، به مقاله ما تحت عنوان مرجع کامل داده‌های عددی در جاوااسکریپت مراجعه کنید.

این مرجع شامل توضیحات و مثال‌هایی از تمامی ویژگی‌ها و متدهای موجود برای داده‌های عددی است.

منابع آموزشی