گروه مقاله : جاوا اسكريپت Java Script
تاريخ انتشار : 1396/08/21 - 11:08
كد :7938

اعداد در جاوا اسکریپت

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

جاوا اسکریپت یک نوع عدد تعریف می کند. اعداد در جاوا اسکریپت می توانند با یا بدون ممیز نوشته شوند.

var x = 3.14; // A number with decimals
var y = 3; // A number without decimals

اعداد بسیار ریز میتوانند با علائم ریاضی نوشته شوند:

var x = 123e5; // 12300000
var y = 123e-5; // 0.00123

تمام اعداد در جاوا اسکریپت از نوع 64-bit Floating هستند.

برخلاف سایر زبان های برنامه نویسی که انواع مختلف اعداد مانند integers ، short ،long دارند جاوا اسکریپت از این  انواع عددی استفاده نمی کند.

 

اعداد در جاوا اسکریپت

 

افزودن عدد و رشته

در جاوا اسکریپت از عملگر + برای جمع زدن اعداد و بهم چسباندن رشته ها استفاده میشود.

اگر دو عدد را با هم جمع بزنید نتیجه یک عدد است:

var x = 10;
var y = 20;
var z = x + y; // z will be 30 (a number)

اگر دو رشته را با هم جمع بزنید نتیجه یک رشته خواهد بود:

var x = "10";
var y = "20";
var z = x + y; // z will be 1020 (a string)

اگر یک عدد را با یک رشته جمع بزنید نتیجه یک رشته خواهد بود:

var x = 10;
var y = "20";
var z = x + y; // z will be 1020 (a string)

اگر یک رشته را به یک عدد جمع ببندید نتیجه همچنان یک رشته خواهند بود.

var x = "10";
var y = 20;
var z = x + y; // z will be 1020 (a string)

رشته های عددی

رشته ها در جاوا اسکریپت میتوانند داری مقادیر عددی باشند:

var x = 100; // x is a number

var y = "100"; // y is a string

در هنگام اجرا، تمام عملگرهای مربوط به اعداد، تمام رشته های دارای مقدار عددی را به عدد تبدیل می کنند:

مثال :

var x = "100";
var y = "10";
var z = x / y; // z will be 10

یک مثال دیگر:

var x = "100";
var y = "10";
var z = x * y; // z will be 1000

یک مثال دیگر:

var x = "100";
var y = "10";
var z = x - y; // z will be 90

یک مثال دیگر:

var x = "100";
var y = "10";
var z = x + y; // z will not be 110 (It will be 10010)

در مثال آخر دو رشته باهم ترکیب شده اند.

NaN - Not a Number :

یک عبارت ذخیره شده برای بازگردانی در هنگامی است که عملیاتی که باید توسط اعداد انجام شود توسط عناصر غیر عددی مانند رشته ها انجام میشود.

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

مثال دیگر :

var x = 100 / "10"; // x will be 10

برای تشخصی عدد بودن یا نبودن متغییری از متد  isNaN() استفاده کنید.

var x = 100 / "Apple";
isNaN(x); // returns true because x is Not a Number

استفاده از خود NaN بعنوان مقدار پاسخ NAN باز میگرداند:

var x = NaN;
var y = 5;
var z = x + y; // z will be NaN

ممکن است پاسخ بصورت یک رشته بهم پیوسته نمایان بشود:

var x = NaN;
var y = "5";
var z = x + y; // z will be NaN5

NaN از نظر نوع یک عدد است:

typeof NaN; // returns "number"

بی نهایت

مقدار بی نهایت و یا منهای بین نهایت، عددی است که در صورتیکه مقدار تابع از دامنه بزرگترین عدد ممکن بزگتر بود نمایش داده میشود.

var myNumber = 2;
while (myNumber != Infinity) { // Execute until Infinity
myNumber = myNumber * myNumber;
}

تقسیم عدد به صفر نتیجه بینهایت خواهد داد:

var x = 2 / 0; // x will be Infinity
var y = -2 / 0; // y will be -Infinity

نوع مقدار بینهایت عدد است:

typeof Infinity; // returns "number"

 

هگزا دسیمال:

جاوا اسکریپت هگزادسیمال را بصورت ثابت عددی بکار خواهد برد. برای پردازش کدهای هگزادسیمال باید قبل از آن 0x قرار دهید.

var x = 0xFF; // x will be 255

اگر عددی را با، یک صفر اضافه، در ابتدا درج کنید. مانند 07 جاوا اسکریپت آنرا بصورت یک عدد هشت هشتی میخواند.

جاوا اسکریپت بصورت پیشفرض اعداد را بصورت دسیمال میخواند ولی با متد toString() میتوان خروجی عدد را بصورت هگزا(16) اوکتا (8) باینری (2) تبدیل کرد.

var myNumber = 128;
myNumber.toString(16); // returns 80
myNumber.toString(8); // returns 200
myNumber.toString(2); // returns 10000000

اعداد میتوانند بصورت شیئ تعریف شوند

اعداد در جاوا بصورت پیشفرض به این صورت تعریف میشوند:

var x = 123;

میتوان عداد را بصورت یک شیئ نیز تعریف کرد. برای اینکار از دستور NEW استفاده می شود:

var y = new Number(123);

var x = 123;
var y = new Number(123);

// typeof x returns number
// typeof y returns object

 

براي بهره مندي از مشاوره تخصصي در زمینه طراحی سایت در کرج با شرکت سارگون تماس بگيريد

نظرات كاربران :
نام :
ايميل :
متن نظر : * 
 
متن بالا را وارد نماييد*