آشنایی با اعداد در جاوا اسکریپت

در زبان جاوااسکریپت برای اعداد یک نوع داده ای بیشتر وجود ندارد و از همان کلمه رزرو شده ی var برای تعریف اعداد صحیح و اعشاری استفاده میکنیم. در این فصل با اعداد در جاوا اسکریپت آشنا میشویم.


اعداد

جاوا اسکریپت تنها دارای یک نوع داده ای برای اعداد است. اعداد می‌توانند صحیح و یا اعشاری نوشته شوند :

<p id="demo"></p>

<script>
var x = 3.14;
var y = 3;
document.getElementById("demo").innerHTML = x + "<br>" + y;
</script>

خروجی نمونه مثال بالا به شکل زیر است :

3.14
3

اعداد خیلی بزرگ و یا اعداد خیلی کوچک را می توان با استفاده از علامت e مشخص نمود :

<p id="demo"></p>

<script>
var x = 123e5;
var y = 123e-5;
document.getElementById("demo").innerHTML = x + "<br>" + y;
</script>

خروجی نمونه مثال بالا به شکل زیر است :

12300000
0.00123

اضافه کردن اعداد و رشته ها به هم دیگر

دقت داشته باشید که جاوا اسکریپت از عملگر + برای الحاق دو رشته استفاده می‌کند. اعداد با استفاده از این عملگر با هم جمع شده و در رشته ها الحاق می شوند. اگر شما دو عدد را با همدیگر جمع کنید نتیجه یک عدد خواهد شد :

<p id="demo"></p>

<script>
var x = 10;
var y = 20;
var z = x + y;
document.getElementById("demo").innerHTML = z;
</script>

خروجی نمونه مثال بالا :

30

اگر شما دو رشته را با همدیگر جمع کنید نتیجه الحاق آن دو رشته خواهد بود :

<p id="demo"></p>

<script>
var x = "10";
var y = "20";
var z = x + y;
document.getElementById("demo").innerHTML = z;
</script>

خروجی نمونه مثال بالا :

1020

اگر شما یک عدد و یک رشته را با هم دیگر جمع کنید نتیجه تبدیل عدد به رشته و الحاق هر دوی آنهاست :

<p id="demo"></p>

<script>
var x = 10;
var y = "20";
var z = x + y;
document.getElementById("demo").innerHTML = z;
</script>

خروجی نمونه مثال بالا :

1020

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

<p id="demo"></p>

<script>
var x = 10;
var y = 20;
document.getElementById("demo").innerHTML =
"The result is: " + x + y;
</script>

خروجی نمونه مثال بالا :

The result is: 1020

در نمونه مثال زیر خروجی رشته "102030" خواهد بود :

<p id="demo"></p>

<script>
var x = 10;
var y = 20;
var z = "30";
var result = x + y + z;
document.getElementById("demo").innerHTML = result;
</script>

نکته : کامپایلر جاوا اسکریپت عبارات را از چپ به راست ارزیابی می کند. بنابراین درمثال بالا ابتدا عبارت 20 + 10 ارزیابی شده که نتیجه عدد 30 است. سپس عبارت 30 + "30" ارزیابی می شود که نتیجه ی نهایی یک رشته خواهد بود.


اعداد رشته ای

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

var x = 100;         // x is a number

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

جاوا اسکریپت در عملیات های عددی سعی در تبدیل رشته به عدد را دارد. در نمونه مثال زیر دو عددی که به صورت رشته مشخص شده اند، بدون هیچ مشکلی بر هم تقسیم می شوند :

<p id="demo"></p>

<script>
var x = "100";
var y = "10";
var z = x / y;   
document.getElementById("demo").innerHTML = z;
</script>

خروجی نمونه مثال بالا :

10

مثال زیر نیز به خوبی کار میکند :

<p id="demo"></p>

<script>
var x = "100";
var y = "10";
var z = x * y;   
document.getElementById("demo").innerHTML = z;
</script>

خروجی نمونه مثال بالا به شکل زیر است :

1000

نمونه مثال زیر نیز بدون هیچ مشکلی اجرا می‌شود :

<p id="demo"></p>

<script>
var x = "100";
var y = "10";
var z = x - y;   
document.getElementById("demo").innerHTML = z;
</script>

خروجی نمونه مثال بالا :

90

اما در نمونه مثال زیر  عملگر جمع عملیات الحاق را انجام میدهد :

<p id="demo"></p>

<script>
var x = "100";
var y = "10";
var z = x + y;   
document.getElementById("demo").innerHTML = z;
</script>

خروجی نمونه مثال بالا به شکل زیر است :

10010

Not a Number - NaN

NaN یک کلمه رزرو شده در جاوا اسکریپت است و مشخص می کند مقدار مورد نظر یک عدد معتبر نیست. سعی در به کار بردن یک رشته غیر عددی در یک عملیات عددی باعث خواهد شد نتیجه NaN باشد :

<p id="demo"></p>

<script>
document.getElementById("demo").innerHTML = 100 / "Apple";
</script>

خروجی نمونه مثال بالا به شکل زیر است :

NaN

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

<p id="demo"></p>

<script>
document.getElementById("demo").innerHTML = 100 / "10";
</script>

خروجی نمونه مثال بالا :

10

می‌توان از متد ()isNaN در جاوا اسکریپت برای معتبر بودن یک value استفاده نمود :

<p id="demo"></p>

<script>
var x = 100 / "Apple";
document.getElementById("demo").innerHTML = isNaN(x);
</script>

خروجی نمونه مثال بالا :

true

در صورتی که از مقدار NaN در یک عملیات ریاضی استفاده کنید، نتیجه NaN خواهد بود :

<p id="demo"></p>

<script>
var x = NaN;
var y = 5;
document.getElementById("demo").innerHTML = x + y;
</script>

خروجی نمونه مثال بالا :

NaN

 

منتشر شده در ۱۴ آذر ۱۳۹۷ حمید رضا ملکی ۷۶ بازدید
دیدگاه ها

هنوز دیدگاهی ثبت نشده

برای ارسال دیدگاه لازم است ابتدا وارد سایت شوید