اپراتور(عملگر)ها در جاوا اسکریپت هم بسیار شبیه دیگر زبان های برنامه نویسی مطرح هستند. ما از اپراتورها بیشتر برای دستکاری متغیرها و برای تصمیم گیری ها استفاده میکنیم. اگر این اولین زبان برنامه نویسیه که دارید یاد میگیرید در بدترین حالت شما چهار اپراتور محاسباتی +
و -
و *
و/
رو بلدید. اما تو برنامه نویسی ما به اپراتورهای دیگه ای هم نیاز داریم که در ادامه در موردش صحبت میکنیم اما قبل از اون بیاین یه نگاهی یه واژه های مورد استفاده تو این درس و تعریفشون بکنیم.
واژه ها
اپراتور(Operator): عملگر – عملی که روی عملوند ها اعمال میشه. برای مثال تو دستور 1 + 2
، اینجا +
یه عملگر هست
اپرند (Operand): عملوند – چیزی که عملگر روش اجرا میشه برای مثال، تو مثال بالا2
و 1
دو عملوند ما هستند که روی اینجا یک علمی انجام شده.
Binary : در صورتی که یه عملگر روی دو عملوند اعمال بشه بهش میگیم Binary.
Unary – در صورتی که یه عملگر روی یک عملوند اعمال بشه بهش میگیم Unary.
انواع اپراتورها در جاوا اسکریپت
خوب بیاین یه نگاهی به انواع اپراتورها در جاوا اسکریپت بندازیم.
- اپراتورهای انتصابی (Assignment operators)
- اپراتورهای مقایسه ای (Comparison operators)
- اپراتورهای ریاضی(محاسباتی) (Arithmetic operators)
- اپراتورهای منطقی (Logical operators)
- اپراتورهای رشته (String operators)
همچنین اپراتورهای دیگه هم داریم که اینجا در موردش صحبت نمیکنیم:
- اپراتورهای بیتی (Bitwise operators) – شامل
&
(and) –|
(or) –^
(xor) که برای مقایسه روی بیتها استفاده میشه. - اپراتورهای Unary (Unary operators) – شامل
delete
,typeof
وvoid
- اپراتور Ternary (Ternary operators) – برای ساده کردن شرط های
if
بکار میرود و به شکلcondition ? val1 : val2
نوشته میشه. - اپراتورهای رابطه ای (Relational operators) – شامل
in
وinstanceof
اپراتورهای انتصابی (Assignment operators)
همونطور که از اسمش پیداست این عملگرها برای نسبت دادن یک مقدار به یک متغیر مورد استفاده قرار میگیرن و مقدار عملوند سمت چپ برابر با عملوند سمت راست میشه. تو جدول پایین میتونید عملگرهایی که از ترکیب عملگرهای محاسباتی و عملگر انتصاب (“=”) بوجود میان رو ببیدید:
عملگر | روش دوم | توضیح |
---|---|---|
x = y | x = y | مقدار عملوند راست در عملوند چپ قرار میگیرد |
x += y | x = x + y | جمع |
x -= y | x = x – y | تفریق |
x *= y | x = x * y | ضرب |
x /= y | x = x / y | تقسیم |
x %= y | x = x % y | باقی مانده |
اپراتورهای مقایسه ای (Comparison operators)
همونطور که از اسمش مشخصه، از اپراتورهای مقایسه ای برای مقایسه کردن دو عملوند استفاده میشه. توضیحات هر کدوم از اپراتورها رو ببینید:
عملگر | نام | توضیح | مثال |
---|---|---|---|
x == y | برابر(Equal) | درست است اگر x برابر y باشد |
5==8 >>false |
x === y | کاملا برابر(Identical) | درست از اگر x برابر با y باشد و هر دو از یک نوع باشند (در اینجا “5” از نوع String و 5 از نوع number است) |
"5"===5 >>false |
x != y | نابرابر(Not equal) | درست است اگر x برابر y نباشد |
8=!5 >>true |
x !== y | کاملا نا برابر(Not Identical) | درست است اگر x برابر y نباشد یا هر دو از یک نوع نباشند |
"5"==!5 >>true |
x > y | بزرگتر(Greater than) | درست است اگر x بزرگتر از y باشد |
8<5 >>false |
x < y | کوچکتر(Less than) | درست است اگر x کوچکتر از y باشد |
8>5 >>true |
x >= y | بزرگتر یا برابر با(Greater than or equal to) | درست است اگر x بزرگتر یا برابر با y باشد |
8=<5 >>false |
x <= y | کوچکتر یا برابر با(Less than or equal to) | درست است اگر x کوچکتر یا برابر با y باشد |
8=>5 >>true |
اپراتورهای ریاضی (Arithmetic operators)
اپراتورهای ریاضی دو عدد رو به عنوان عملوند دریافت و و حاصل عمل ریاضی روبه صورت یک عدد برمیگردونن.
عملگر | نام | توضیح | مثال | نتیجه |
---|---|---|---|---|
x + y | جمع | جمع x و y | 2 + 2 | 4 |
x – y | تفریق | تفریق y از x | 2 – 5 | 3 |
x * y | ضرب | حاصل ضرب x و y | 5 * 2 | 10 |
x / y | تقسیم | خارج قسمت تقسیم x و y | 5 / 15 | 3 |
عملگر | نام | توضیح |
---|---|---|
x ++ | Pre-increment | ابتدا به متغیر x یک واحد اضافه میکند و بعد آن را برمیگرداند |
++ x | Post-increment | ابتدا متغیر x را برمیگرداند و بعد یک واحد به آن اضافه میکند |
x — | Pre-decrement | ابتدا از متغیر x یک واحد کم میکند و بعد آن را برمیگرداند |
— x | Post-decrement | ابتدا متغیر x را برمیگرداند و بعد یک واحد از آن کم میکند |
x- | Unary negation | اپراتور نفی – اگر x=3 باشد -x برابر با -3 میشه و بر عکس |
x+ | Unary plus | در صورتی که عملوند عدد نباشد، آن را به عدد تبدیل میکند |
x % y | باقی مانده (Remainder) | باقی مانده تقسیم دو عدد رو برمیگردونه مثلا 12 % 5 = 2 |
اپراتورهای منطقی (Logical operators)
اپراتورهای منطقی معمولا با مقادیر Boolean (true
یا false
) و در شرط ها برای تصمیم گیری استفاده میشن.
عملگر | نام | توضیح |
---|---|---|
x && y | And | اگر x و y true باشند، true را برمیگرداند. در موارد غیر Boolean(اگر عملوندها از نوع Boolean نباشند)، اگر x بتواند به false تبدیل شود(* از نظر جاوا اسکریپت false باشد) x را برمیگرداند در غیر اینصورت y را برمیگرداند |
x || y | Or | اگر x یا y true باشند،true را برمیگرداند. در موارد غیر Boolean(اگر عملوندها از نوع Boolean نباشند)، اگر x بتواند به true تبدیل شود x را برمیگرداند در غیر اینصورت y را برمیگرداند |
x ! | Not | اگر x برابر با true باشد false را برمیگرداند و برعکس |
* این مقادیر از نظر جاوا سکریپت false
هستند:
- خود
false
null
NaN
0
- رشته خالی (
""
یا''
) undefined
اپراتورهای رشته (String operators)
از اپراتور + برای الحاق کردن رشته های متنی هم استفاده میشه مثل 'irdevs' + ' tuts' = 'irdevs tuts'
خوب امیدوارم در مورد اپراتورها در جاوا اسکریپت دیگه ابهامی نداشته باشید. با توجه که این دوره مقدماتی هست تقریبا به بیشتر موارد پرداختیم. در هر صورت، اگر سوالی در این باره دارید میتونید تو انجمن بپرسید.
در ادامه با ما باشید.