عملگرهای حسابی
نقشهٔ خانوادههای عملگر را دیدید. این جلسه میرویم سراغ خانوادهٔ حسابی — نمادهایی که بیشتر با عدد کار میکنند و یک نتیجهٔ تازه میسازند. اینجا + - * / % را جدی تمرین میکنید، با پرانتز ترتیب را عوض میکنید، با ++ و -- شمارنده را یکی جابهجا میکنید، با عملگر توان (دو ستاره در کد) توان میگیرید، و همان تلهٔ معروف را جمعوجور میکنید: وقتی + بهجای جمع، متن میچسباند.
عملگر حسابی یعنی چه؟
عملگر حسابی به موتور میگوید حساب کن. مقداری که رویش کار میشود همان عملوند است. در 12 / 4 علامت / عملگر است و 12 و 4 عملوندند. نتیجه را میتوانید در متغیر بگذارید، لاگ کنید، یا روی صفحه نشان دهید.
پنج عملگر روزمره
📊 عملگرهای حسابی روزمره
| عملگر | کار | نمونهٔ نتیجه |
|---|---|---|
+ |
جمع | 7 + 3 → 10 |
- |
تفریق | 7 - 3 → 4 |
* |
ضرب | 7 * 3 → 21 |
/ |
تقسیم | 7 / 2 → 3.5 |
% |
باقیماندهٔ تقسیم | 7 % 3 → 1 |
این جدول را دم دست نگه دارید. تقسیم با / ممکن است اعشار بدهد. % یعنی باقیمانده — «درصد» نیست.
console.log(20 + 4);
console.log(20 - 4);
console.log(20 * 4);
console.log(20 / 4);
console.log(20 % 4);
console.log(20 / 3);
الگوی باقیمانده با %
% میپرسد: «بعد از تقسیم چه چیزی میماند؟» همین مانده برای زوج/فرد و منطق «هر Nتا یکی» خیلی بهکار میآید.
console.log(8 % 2);
console.log(9 % 2);
console.log(15 % 5);
console.log(17 % 5);
let n = 12;
console.log(n % 2 === 0);
8 % 2 میشود 0 (زوج). 9 % 2 میشود 1 (فرد). تست رایج زوج بودن: n % 2 === 0. وقتی 15 % 5 صفر است یعنی بدون باقیمانده بخشپذیر است. بعداً داخل حلقه هم از باقیمانده استفاده میکنید؛ فعلاً فقط مانده را بخوانید.
اولویت و پرانتز
موتور همیشه چپبهراست برای همهٔ نمادها حساب نمیکند. معمولاً ضرب و تقسیم زودتر از جمع و تفریق اجرا میشوند. پرانتز ترتیب دلخواه شما را تحمیل میکند — اول داخل (…) را بخوانید.
console.log(2 + 3 * 4);
console.log((2 + 3) * 4);
console.log(10 - 6 / 2);
console.log((10 - 6) / 2);
بدون پرانتز، 2 + 3 * 4 میشود 14 (اول ضرب). با (2 + 3) * 4 نتیجه 20 است. برای قیمت، امتیاز یا فرمول، پرانتز را عمداً بنویسید.
++ و -- و عملگر توان
++ یکی به عدد داخل متغیر اضافه میکند. -- یکی کم میکند. عملگر توان (دو ستاره پشتسرهم در کد) عدد را به توان میرساند. اگر هنوز راحت نیستید، خط شفاف n = n + 1 هم درست است؛ ++ را زیاد در حلقهها میبینید.
let lives = 3;
lives++;
console.log(lives);
lives--;
console.log(lives);
console.log(2 ** 3);
console.log(5 ** 2);
بعد از lives++ مقدار میشود 4. در نمونه، دو به توان سه برابر 8 است. پنج به توان دو میشود 25. میانبرهایی مثل += مال جلسهٔ مقداردهی بعدیاند؛ اینجا روی نمادهای حساب میمانیم.
وقتی + میچسباند، نه جمع
اگر یک طرف + رشته باشد، موتور اغلب میچسباند. وقتی منظورتان جمع عددی است، با Number(...) تبدیل کنید (یا مطمئن شوید هر دو طرف از قبل عددند).
console.log("5" + 2);
console.log(Number("5") + 2);
console.log(5 + Number("2"));
let a = "10";
let b = "3";
console.log(Number(a) + Number(b));
"5" + 2 میشود "52". Number("5") + 2 میشود 7. همان نکتهٔ تبدیل نوع — در فرم و متن صفحه مدام تکرار میشود.
نشان دادن جمع روی صفحه
یک صورتحساب کوچک حساب کنید، با باقیمانده یک اشارهٔ بستهبندی بدهید، و نتیجه را روی صفحه بنویسید.
<!DOCTYPE html>
<html>
<head>
<title>Arithmetic — page total</title>
</head>
<body>
<p id="out">…</p>
<script>
let price = 12;
let qty = 3;
let shipping = 4;
let total = price * qty + shipping;
let leftover = total % 5;
let box = document.getElementById("out");
box.textContent = "total=" + total + " · rem5=" + leftover;
</script>
</body>
</html>
اینجا * قبل از + اجرا میشود؛ پس 12 * 3 + 4 میشود 40. 40 % 5 برابر 0 است. price یا qty یا shipping را عوض کنید، رفرش کنید، و هر دو عدد را چک کنید.
خودتان امتحان کنید
- اینها را لاگ کنید:
14 + 5،14 - 5،14 * 5،14 / 5و14 % 5. - با
%و=== 0بگویید آیا22زوج است. 1 + 2 * 3را کنار(1 + 2) * 3بگذارید و فرق را ببینید.- با
let c = 0شروع کنید، دو بارc++بزنید، بعدcرا لاگ کنید. - از نمونهٔ توان، سه به توان سه را لاگ کنید و همچنین
Number("8") + 1. - در دموی HTML فقط
qtyرا عوض کنید، رفرش کنید، و جمع و باقیماندهٔ تازه را بخوانید.
اشتباههای رایج
%را «درصد» خواندن — این علامت باقیمانده است- فکر کردن که
+همیشه جمع میزند — یک طرف رشته باشد، اغلب میچسباند - فراموش کردن پرانتز وقتی نباید ضرب/تقسیم برنده شوند
- قاطی کردن
++(یکی عوض کردن) با=(ذخیرهٔ هر مقدار) - حساب کردن روی رشتهٔ نمایشی بهجای عدد خام
خلاصه
- عملگرهای حسابی:
+-*/% %باقیمانده است — برای زوج/فرد و «هر Nتا»- پرانتز اولویت را کنترل میکند؛ معمولاً
*و/زودتر از+و-اند ++/--یکی جابهجا میکنند؛ عملگر توان، توان میگیرد- وقتی
+میچسباند،Number()را بهکار ببرید - بعدی: مقداردهی — ذخیره و بهروزرسانی با
=و دوستانش
🧠 دانش خود را بیازمایید
دانش خود را بیازمایید
خود را با این آزمون تعاملی به چالش بکشید و ببینید موضوع را چقدر خوب درک کردهاید
📝 دستورالعملها
- هر سوال را با دقت بخوانید
- بهترین پاسخ را برای هر سوال انتخاب کنید
- میتوانید آزمون را هر چند بار که میخواهید تکرار کنید
- پیشرفت شما در بالا نمایش داده میشود