عدد (number) در جاوا اسکریپت و 2 نوع اصلی و مهم اعداد
آنچه خواهید دید :
Toggleعدد (number) در برنامه نویسی چیست؟
اعداد در برنامه نویسی، یکی از مهمترین انواع داده هستند. معمولاً برای انجام محاسبات، انجام مقایسه ها، نشان دادن آدرس در مموری، نشان دادن رنگ ها، ارتباطات در شبکه و … استفاده می شوند.
معمولاً اعداد رو با فرمت های مختلفی می شناسند. معروف ترین فرمت های اعداد شامل:
- Integer: معمولاً برای نشان دادن اعداد صحیح (مثبت، منفی و صفر) استفاده می شوند. انواع داده معروف از این دسته شامل int, long, short هستند.
const megademyUsers = 1000;
- Floating numbers: برای نمایش دادن اعداد اعشاری استفاده می شوند.
const websitePing = 1.4;
البته که انواع دادههای عددی دیگه هم وجود داره، ولی ۲ دسته اصلی و پر کاربرد اعداد، این دسته ها هستند.
عدد (number) در جاوا اسکریپت
در جاوا اسکریپت، ۲ نوع اصلی اعداد وجود دارند.
۱- Regular numbers: این نوع از اعداد، مجموعی از integer که صحبت کردیم مثل اعداد مثبت، منفی، صفر و اعداد اعشاری هست و بیشترین استفاده ما در جاوا اسکریپت از این نوع هست. یک مثال ببینیم
const number1 = 1; const number2 = 1.2;
۲- BigInt numbers: اعدادی هستند که بسیار بزرگ هستند. این اعداد معمولاً در بازه بیشتر از 13,241,983,361 یا کمتر از 13,241,983,361- هستند. این اعداد استفاده کمتری دارند ولی اینکه بدونیم وجود داره مهم هست.
روش های نوشتن عدد (number) در جاوا اسکریپت
توی جاوا اسکریپت، ۲ روش برای نوشتن یک عدد وجود داره
نوشتن عدد بدون علامت
برای اعدادی که از لحاظ طول کوتاه هستند، بدون استفاده از هیچ علامتی، اون عدد رو می نویسیم
const numberWithoutUnderline = 100;
نوشتن عدد با علامت underline
برای اعدادی که ارقام بالایی دارند، مخصوصاً تعداد صفر های بالا، از “_” استفاده می کنیم.
const numberWithUnderline = 1_000_000;
همونطور که می بینید خوانایی این نوع عدد بیشتر هست. underline در انجام محاسبات تاثیری نداره و بدون مشکل میشه ازش استفاده کرد.
اعداد hex, binary و octal
octal
یکی از پر استفاده ترین نوع عدد در جاوا اسکریپت، اعداد hexadecimal هست. معمولاً این نوع اعداد در رنگ ها استفاده میشه ولی استفاده های دیگه ای هم داره. روش نوشتن این اعداد هم خیلی سادست
console.log(0xff); // 255
همونطور که می بینید، شروع عدد با 0x
هست. بعد از به اصطلاح prefix، عدد یا مقدار مورد نظرمون رو می نویسیم.
binary و octal
دو نوع دیگه اعداد که استفاده کمتری دارن، اعداد octal و binary هستند. برای نوشتن این ۲ نوع از prefix های 0b
و 0o
استفاده میشه.
let a = 0b11111111; // binary form of 255 let b = 0o377; // octal form of 255
تبدیل عدد به binary و octal
اعداد در جاوا اسکریپت این قابلیت هارو دارن که (base) اشون تغییر کنه. اگر علاقه دارید که base های اعداد رو بهتر درک کنید، این مقاله رو مطالعه کنید.
برای این کار، از متد toString استفاده می کنیم. برای اینکه درک کنید که متد ها چی هستن، به مقاله رشته (string) در مگادمی مراجعه کنید.
۴ نوع اصلی و کاربردی base ها توی زبان جاوا اسکریپت وجود داره که اونهارو باهم برسی می کنیم.
- base 16: این نوع برای رنگ ها استفاده میشه (hexadecimal). کارکتر های قابل استفاده بین 0-9 و A-F هستند.
- base 2: این نوع معمولاً برای دیباگ کردن ها استفاده میشه که میتونه 1 یا 0 باشه.
- base 36: این نوع هم بین اعداد 0-9 و A-Z هست. این نوع بزرگترین نوع عدد هست و معمولاً برای اعداد بزرگ استفاده میشه.
- base 10: این نوع هم شامل اعداد 0-9 هست. بصورت دیفالت هم این نوع به عنوان base اصلی قرار داره.
ریاضی در اعداد (numbers)
توی زبان های برنامه نویسی، ریاضی یکی از ویژگی های مهم و کاربردی هست. برای این موضوع توی جاوا اسکریپت یکسری function ها و متدها وجود داره.
Object ای که توی جاوا اسکریپت وظیفه انجام عملیات ریاضی رو داره، Math هست. در ادامه پر کاربرد ترین متد های این Object رو باهم برسی می کنیم.
Rounding
یکی از پر استفاده ترین عملیات ها موقع کار با اعداد، گرد کردن (Rounding) هست. برای اینکه روش های مختلف این موضوع رو برسی کنیم، به جدول زیر نگاه کنید.
Math.trunc | Math.round | Math.ceil | Math.floor | عدد |
3 | 3 | 4 | 3 | 3.1 |
3 | 4 | 4 | 3 | 3.6 |
-1 | -1 | -1 | -2 | -1.1 |
-1 | -2 | -1 | -2 | -1.6 |
- Math.floor: به سمت پایین گرد میشه. یعنی 3.1 تبدیل میشه به 3 و 1.1- تبدیل میشه به 2-.
- Math.ceil: به سمت بالا گرد میشه. یعنی 3.1 تبدیل میشه به 4 و 1.1- تبدیل میشه به 1-.
- Math.round: به نزدیک ترین عدد قبل از اعشار تبدیل میشه. یعنی 3.1 تبدیل میشه به 3 و 1.1- تبدیل میشه به 1-.
- Math.trunc: عدد بعد از اعشار رو پاک میکنه بدون اینکه عدد رو گرد کنه. یعنی 3.1 تبدیل میشه به 3 و 1.1- تبدیل میشه به 1-. (توجه کنید که این متد توی Internet Explorer (IE) کار نمیکنه.)
float precision
یکی از مهمترین مباحث در کار کردن با اعداد اعشاری در تمامی زبان های برنامهنویسی float precision هست. موضوعی هست که با نحوه ذخیره شدن اعداد در حافظه دستگاه ارتباط داره. شما این موضوع رو در نظر بگیرید که اعداد اعشاری به دلیل محدودیت حافظه در برنامه نویسی با دقت پایینی ذخیره میشن. برای اینکه راجب این موضوع بیشتر اطلاعات بگیرید، وارد این لینک بشید.
console.log( 0.1 + 0.2 ); // 0.30000000000000004
Math.random
یکی از متد های پرکارد برنامهنویسی، مخصوصاً جاوا اسکریپت، Math.random هست که به ما یک عدد تصادفی بین 0 و 1 میده (عدد 1 رو نمیده).
console.log( Math.random() ); // 0.1234567894322 console.log( Math.random() ); // 0.5435252343232 console.log( Math.random() ); // ... (any random numbers)
نتیجه گیری
اعداد یکی از مهمترین نوع داده در برنامهنویسی هستن و در محاسبات، دستهبندی دادهها، شرطبندیها و حل مسائل مختلف ازشون استفاده میشه.
دو نوع اصلی از اعداد در برنامهنویسی وجود داره:
. اعداد صحیح: این اعداد که با عنوان Integer هم شناخته میشن، فقط شامل اعداد کامل مثل 1، 10، -2000 و … میشن. از این نوع اعداد برای شمارش، دستهبندی و انجام محاسبات پایه استفاده میشه.
2. اعداد اعشاری: این اعداد که با عنوان Float یا Double هم شناخته میشن، شامل مقادیر اعشاری مثل 3.14، 0.5، -2.75 و … میشن. از این نوع اعداد برای محاسبات دقیقتر، شبیهسازیهای علمی و کار با مقادیر غیرصحیح استفاده میشه.
به طور خلاصه، اعداد در برنامهنویسی نقش اساسی در حل مسائل و انجام محاسبات دارن. درک درست انواع اعداد، متغیرها، عملگرها و توابع مربوطه برای هر برنامهنویسی ضروریه.
برای اینکه به مطالب ببیشتری راجب به این موضوع دسترسی پیدا کنید، به بخش مقالات وبسایت مگادمی (مگامگ) مراجعه کنید.
درباره مجید کارگر
مجید کارگر هستم. ۲۱ سالمه و حدوده ۳ ساله تو حوزه فرانت در حال یادگیری و پیشرفت کردن هستم و از اول مهر ماه ۱۴۰۲ فرانت رو به صورت حرفه ای شروع کردم. تمام تلاشم اینه که دانشی رو که دارم با بقیه به اشتراک بزارم که همه باهم پیشرفت کنیم.
نوشته های بیشتر از مجید کارگر