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

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


متد های عددی

متد های عددی در کار با اعداد به ما کمک خواهند کرد. مقادیر اولیه همچون 3.14 و 2014 نمی توانند دارای پروپرتی و متد باشند، زیرا آنها object نیستند. اما با استفاده از زبان جاوااسکریپت متد ها و پروپرتی ها برای مقادیر اولیه در دسترس خواهند بود و دلیل آن هم این است که در جاوا اسکریپت مقادیر اولیه به عنوان object در نظر گرفته می شوند.


متد ()toString

با استفاده از متد ()toString می توان یک  عدد را به یک رشته تبدیل کرد.

همه متد های عددی میتوانند بر روی انواع مختلف اعداد به کار برده شوند (literals, variables و یا expressions) :

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

<script>
var x = 123;
document.getElementById("demo").innerHTML =
  x.toString() + "<br>" +
   (123).toString() + "<br>" +
   (100 + 23).toString();
</script>

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

123
123
123

متد ()toExponential

متد ()toExponential یک رشته را بر میگرداند. این رشته حاوی عددی خواهد بود که با نماد e مزین شده است. این متد عددی را به عنوان پارامتر می پذیرد که تعداد کاراکتر هایی که بعد از نقطه اعشار می آید را مشخص می کند :

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

<script>
var x = 9.656;
document.getElementById("demo").innerHTML =
  x.toExponential() + "<br>" + 
  x.toExponential(2) + "<br>" + 
  x.toExponential(4) + "<br>" + 
  x.toExponential(6);
</script>

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

9.656e+0
9.66e+0
9.6560e+0
9.656000e+0

دقت داشته باشید که پارامتر ورودی اختیاری است می‌توانید آن را در نظر نگیرید.


متد ()toFixed

متد ()toFixed یک رشته را برمیگرداند. این رشته حاوی عددی خواهد بود که دارای تعداد مشخصی کاراکتر برای قسمت اعشاری آن است :

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

<script>
var x = 9.656;
document.getElementById("demo").innerHTML =
  x.toFixed(0) + "<br>" +
  x.toFixed(2) + "<br>" +
  x.toFixed(4) + "<br>" +
  x.toFixed(6);
</script>

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

10
9.66
9.6560
9.656000

نکته : متد (toFixed(2 برای کار با مقادیر پولی بسیار مناسب است.


متد ()toPrecision

متد ()toPrecision رشته ای را برمی گرداند که شامل عددی با طول مشخص است :

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

<script>
var x = 9.656;
document.getElementById("demo").innerHTML = 
  x.toPrecision() + "<br>" +
  x.toPrecision(2) + "<br>" +
  x.toPrecision(4) + "<br>" +
  x.toPrecision(6);  
</script>

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

9.656
9.7
9.656
9.65600

متد ()valueOf

متد ()valueOf یک عدد را به عنوان یک عدد بر می گرداند.در مواردی که می‌خواهید مقدار عددی یک متغیر را بدست آورید، می توانید از این متد استفاده کنید. همچنین برای زمانی که بخواهید یک شی عددی را به یک مقدار عددی ساده تبدیل کنید نیز می توان از این متد استفاده کرد :

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

<script>
var x = 123;

document.getElementById("demo").innerHTML = 
  x.valueOf() + "<br>" +
  (123).valueOf() + "<br>" +
  (100 + 23).valueOf();
</script>

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

123
123
123

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

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

  • ()Number
  • ()parseInt
  • ()arseFloat

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


متد ()Number

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

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

<script>
document.getElementById("demo").innerHTML = 
  Number(true) + "<br>" +
  Number(false) + "<br>" +
  Number("10") + "<br>" + 
  Number("  10") + "<br>" +
  Number("10  ") + "<br>" +
  Number(" 10  ") + "<br>" +
  Number("10.33") + "<br>" + 
  Number("10,33") + "<br>" +
  Number("10 33") + "<br>" +
  Number("John");
</script>

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

1
0
10
10
10
10
10.33
NaN
NaN
NaN

اگر عملیات تبدیل با موفقیت انجام نشود، مقدار NaN برگردانده میشود.


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

می توان متد ()Number را بر روی یک تاریخ اعمال کرد. در این صورت تاریخ مورد نظر به یک عدد تبدیل خواهد شد. این عدد به صورت میلی ثانیه از تاریخ 1.1.1970 در نظر گرفته می شود :

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

<script>
var x = new Date("2017-09-30");
document.getElementById("demo").innerHTML = Number(x); 
</script>

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

1506729600000

متد ()parseInt

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

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

<script>
document.getElementById("demo").innerHTML = 
  parseInt("10") + "<br>" +
  parseInt("10.33") + "<br>" +
  parseInt("10 6") + "<br>" +  
  parseInt("10 years") + "<br>" +  
  parseInt("years 10");  
</script>

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

10
10
10
10
NaN

اگر عملیات تبدیل با موفقیت انجام نشود، مقدار NaN برگردانده میشود.


متد ()parseFloat

با استفاده از متد ()parseFloat می توان یک رشته را به یک عدد تبدیل کرد. رشته مورد نظر میتواند شامل فضاهای خالی باشد. دقت داشته باشید در صورتی که اعداد با فاصله در رشته قرار بگیرند اولین عدد برگردانده میشود :

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

<script>
document.getElementById("demo").innerHTML = 
  parseFloat("10") + "<br>" +
  parseFloat("10.33") + "<br>" +
  parseFloat("10 6") + "<br>" +  
  parseFloat("10 years") + "<br>" +
  parseFloat("years 10");    
</script>

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

10
10.33
10
10
NaN

اگر عملیات تبدیل با موفقیت انجام نشود، مقدار NaN برگردانده میشود.

 

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

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

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