From 1109132f09d75da9a28b649c7677bb6ce07c40c0 Mon Sep 17 00:00:00 2001 From: Peter Bengtsson Date: Tue, 8 Dec 2020 14:41:45 -0500 Subject: initial commit --- .../operators/operator_precedence/index.html | 330 +++++++++++++++++++++ 1 file changed, 330 insertions(+) create mode 100644 files/he/web/javascript/reference/operators/operator_precedence/index.html (limited to 'files/he/web/javascript/reference/operators/operator_precedence') diff --git a/files/he/web/javascript/reference/operators/operator_precedence/index.html b/files/he/web/javascript/reference/operators/operator_precedence/index.html new file mode 100644 index 0000000000..2f22b36031 --- /dev/null +++ b/files/he/web/javascript/reference/operators/operator_precedence/index.html @@ -0,0 +1,330 @@ +--- +title: Operator precedence +slug: Web/JavaScript/Reference/Operators/Operator_Precedence +translation_of: Web/JavaScript/Reference/Operators/Operator_Precedence +--- +
{{jsSidebar("Operators")}}
+ +

קדימות אופרטורים קובעת את הסדר שבו מעריכים את תוצאות האופרטורים. אופרטורים בעלי קדימות גבוהה יותר יוערכו ראשונים.

+ +

דוגמא נפוצה:

+ +
3 + 4 * 5 // מחזיר 23
+
+ +

לאופרטור הכפל ("*") יש קדימות גבוהה יותר מאשר לאופרטור החיבור ("+") ולכן יוערך ראשון.

+ +

אסוציטיביות

+ +

אסוציטיביות קובעת את הסדר שבו מעריכים אופרטורים בעלי קדימות זהה. למשל, חשבו על הביטוי הבא:

+ +
a OP b OP c
+
+ +

אסוציטיביות שמאלית (משמאל לימין) פירושה שמעריכים (a OP b) OP c , ואסוציטיביות ימנית (מימין לשמאל) פירושה שמעריכים a OP (b OP c). לאופרטורי השמה יש אסוציטיביות ימנית, אז אפשר לכתוב:

+ +
a = b = 5;
+
+ +

ולצפות ש-a ו-b יקבלו את הערך 5. זאת משום שאופרטור ההשמה מחזיר את הערך שהושם. תחילה, הערך 5 מושם ל-b. אחר כך הערך של b מושם ל-a.

+ +

טבלה

+ +

הטבלה הבאה ממויינת לפי קדימות מהגבוה (19) לנמוך (0).

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
אופרטוראסוציטיביותסוג האופרטורקדימות
( … )n/aGrouping19
… . …שמאליתMember Access18
… [ … ]שמאליתComputed Member Access
new … ( … )n/anew (עם רשימת ארכומנטים)
… ( … )שמאליתFunction Call17
new …ימניתnew (without argument list)
… ++n/aPostfix Increment16
… --n/aPostfix Decrement
! …ימניתLogical NOT15
~ …ימניתBitwise NOT
+ …ימניתUnary Plus
- …ימניתUnary Negation
++ …ימניתPrefix Increment
-- …ימניתPrefix Decrement
typeof …ימניתtypeof
void …ימניתvoid
delete …ימניתdelete
… ** …ימניתExponentiation14
… * …שמאליתMultiplication
… / …שמאליתDivision
… % …שמאליתRemainder
… + …שמאליתAddition13
… - …שמאליתSubtraction
… << …שמאליתBitwise Left Shift12
… >> …שמאליתBitwise Right Shift
… >>> …שמאליתBitwise Unsigned Right Shift
… < …שמאליתLess Than11
… <= …שמאליתLess Than Or Equal
… > …שמאליתGreater Than
… >= …שמאליתGreater Than Or Equal
… in …שמאליתin
… instanceof …שמאליתinstanceof
… == …שמאליתEquality10
… != …שמאליתInequality
… === …שמאליתStrict Equality
… !== …שמאליתStrict Inequality
… & …שמאליתBitwise AND9
… ^ …שמאליתBitwise XOR8
… | …שמאליתBitwise OR7
… && …שמאליתLogical AND6
… || …שמאליתLogical OR5
… ? … : …ימניתConditional4
… = …ימניתAssignment3
… += …
… -= …
… **= …
… *= …
… /= …
… %= …
… <<= …
… >>= …
… >>>= …
… &= …
… ^= …
… |= …
yield …ימניתyield2
... …n/aSpread1
… , …שמאליתComma / Sequence0
-- cgit v1.2.3-54-g00ecf