العوامل في جافاسكربت
مفهوم العوامل في جافاسكربت
العوامل (Operators) عبارة عن رموز لها معنى محدد. يمكننا تقسيمها إلى 6 مجموعات أساسية كما يلي:
- Arithmetic Operators (العوامل الحسابية)
- Comparison Operators (العوامل المقارنة)
- Logical Operators (العوامل المنطقية)
- Bitwise Operators (العوامل البتية)
- Assignment Operators (عوامل الإسناد)
- Type Operators (عوامل النوع)
العوامل التي تستخدم في العمليات الحسابية (Arithmetic Operators)
إسم العامل |
رمزه |
مثال |
شرح الكود |
Assignment |
= |
a = b |
أعطي a قيمة b |
Addition |
+ |
a + b |
أضف قيمة b على قيمة a |
Subtraction |
- |
a - b |
إطرح قيمة b من قيمة a |
Unary plus |
+ |
+a |
أضرب قيمة a بالعامل + |
Unary minus |
- |
-a |
أضرب قيمة a بالعامل - |
Multiplication |
* |
a * b |
أضرب قيمة a بقيمة b |
Division |
/ |
a / b |
أقسم قيمة a على قيمة b |
Modulo |
% |
a % b |
للحصول على آخر رقم يبقى عندما نقسم a على b |
Exponentiation |
** |
a ** b |
ضاعف قيمة a بقيمة b |
Increment |
++ |
a++ |
لإضافة 1 على قيمة a |
Decrement |
-- |
a-- |
لإنقاص 1 من قيمة a |
العوامل التي تستخدم في المقارنات (Comparison Operators)
إسم العامل |
رمزه |
مثال |
شرح الكود |
Equal to |
== |
(a == b) |
هل قيمة a تساوي قيمة b ؟ |
Equal value and type |
=== |
(a === b) |
هل قيمة a تساوي b و ما من نفس النوع؟ |
Not equal to |
!= |
(a != b) |
هل قيمة a لا تساوي b ؟ |
Not equal value or type |
!== |
(a !== b) |
هل قيمة a لا تساوي b أو نوع القيم ليس نفسه؟ |
Greater than |
> |
(a > b) |
هل قيمة a أكبر من b ؟ |
Less than |
< |
(a < b) |
هل قيمة a أصغر من b ؟ |
Greater or Equal |
=> |
(a >= b) |
هل قيمة a أكبر أو تساوي b ؟ |
Less or Equal |
<= |
(a <= b) |
هل قيمة a أصغر أو تساوي b ؟ |
Ternary |
?: |
(condition)?a:b |
إذا تحقق الشرط، ضع قيمة a وإلا ضع b |
العوامل التي تستخدم في وضع شروط منطقية (Logical Operators)
إسم العامل |
رمزه |
مثال |
شرح الكود |
AND |
&& |
(a && b) |
هل قيمة a و b تساويان true ؟ |
OR |
|| |
(a || b) |
هل قيمة a أو b أو كلاهما تساويان true ؟ |
NOT |
! |
!a |
هل قيمة a لا تساوي true ؟ |
العوامل التي تستخدم للتعامل مع البتات (Bitwise Operators)
إسم العامل |
رمزه |
مثال |
شرح الكود |
Bitwise AND |
& |
a & b |
يحسّب ناتج جمع الـ bits المشتركة بين a و b |
Bitwise OR |
| |
a | b |
يحسّب ناتج جمع الـ bits المشتركة وغير المشتركة بين a و b |
Bitwise XOR |
^ |
a ^ b |
يحسّب ناتج جمع الـ bits الغير مشتركة بين a و b |
Bitwise NOT |
~ |
~a |
يقلب الـ bits 0 إلى 1 و 1 إلى 0 |
Left shift |
<< |
a << 2 |
يزيح الـ bits من آخر اليسار إلى أول اليمين |
Right shift |
>> |
a >> 2 |
يزيح الـ bits من أول اليمين إلى آخر اليسار |
العوامل التي تستخدم لإعطاء قيم للمتغيرات (Assignment Operators)
إسم العامل |
رمزه |
مثال |
شرح الكود |
Basic Assignment |
= |
a = b |
ضع قيمة b في a |
Add AND Assignment |
+= |
a += b |
أضف قيمة b إلى a |
Subtract AND Assignment |
-= |
a -= b |
أنقص قيمة b من a |
Multiply AND Assignment |
*= |
a *= b |
أضرب قيمة a في b |
Divide AND Assignment |
/= |
a /= b |
أقسم a على b |
Modulo AND Assignment |
%= |
a %= b |
أقسام a على b وخزن الناتج في a |
Left shift AND Assignment |
<<= |
a <<= 2 |
أزح آخر 2 bits وضعهم في الأول |
Right shift AND Assignment |
>>= |
a >>= 2 |
أزح أول 2 bits وضعهم في الآخر |
العوامل التي تستخدم لمعرفة أنواع المتغيرات (Type Operators)
إسم العامل |
رمزه |
مثال |
شرح الكود |
Type of |
typeof |
typeof a |
أعطني نوع القيمة المخزنة في a |
Instance of |
instanceof |
a instanceof String |
هل a كائن من الكلاس String؟ |