ì°ì°ì ì°ì ìì
ì°ì°ì ì°ì ììë ì°ì°ì를 ì¤ííë ìì를 ê²°ì í©ëë¤. ì°ì ììê° ëì ì°ì°ìê° ë¨¼ì ì¤íë©ëë¤.
ìëí´ ë³´ê¸°
console.log(3 + 4 * 5); // 3 + 20
// Expected output: 23
console.log(4 * 3 ** 2); // 4 * 9
// Expected output: 36
let a;
let b;
console.log((a = b = 5));
// Expected output: 5
ì°ì ììì ê²°í©ì±
ìëì ê°ì´ ííí ì ìë ííìì ìê°í´ ë´ ìë¤. ì°ì°ì1ê³¼ ì°ì°ì2ì ì리ìë ì무 ì°ì°ì를 ë£ì ì ììµëë¤.
a ì°ì°ì1 b ì°ì°ì2 c
ë ì°ì°ìì ì°ì ìì(ìë í 참조)ê° ë¤ë¥¼ ê²½ì°, ì°ì ììê° ëì ì°ì°ìê° ë¨¼ì ì¤íëê³ ê²°í©ì±ì ìí¥ì 미ì¹ì§ ììµëë¤. ìë ìì ììë ë§ì ì´ ê³±ì ë³´ë¤ ë¨¼ì ì°ìììë ê³±ì ì ì°ì ììê° ë기 ë문ì 먼ì ì¤íë©ëë¤.
console.log(3 + 10 * 2); // 23ì ì¶ë ¥
console.log(3 + 10 * 2); // 23ì ì¶ë ¥, ê´í¸ë ë¶íìí¨
console.log((3 + 10) * 2); // 26ì ì¶ë ¥, ê´í¸ë¡ ì¸í´ ì¤í ììê° ë°ë
ì¢ê²°í©ì±(ì¼ìª½ìì ì¤ë¥¸ìª½ì¼ë¡)ì ííìì´ (a ì°ì°ì1 b) ì°ì°ì2 cì ê°ì´, ì°ê²°í©ì±(ì¤ë¥¸ìª½ìì ì¼ìª½ì¼ë¡)ì a ì°ì°ì1 (b ì°ì°ì2 c)ì ê°ì´ ê³ì°ëë¤ë ì미ì
ëë¤. ëì
ì°ì°ìë ì°ê²°í©ì±ì´ë¯ë¡ ë¤ìê³¼ ê°ì ì½ë를 ìì±í ì ììµëë¤.
a = b = 5; // a = (b = 5);ì ê°ì
ì´ë ëì
ì°ì°ìë ëì
ë ê°ì ë°ííë¯ë¡ aì bì ê°ì´ 5ê° ë¨ì ììí ì ììµëë¤. ì°ì bì ê°ì´ 5ë¡ ì¤ì ëê³ , ê·¸ ë¤ììë aì ê°ì´ ì°ë³ì¸ b = 5ì ë°íê° 5ë¡ ì¤ì ë©ëë¤.
ë¤ë¥¸ ììë¡, ì¢ê²°í©ì±ì¸ ë¤ë¥¸ ì°ì ì°ì°ìì ë¬ë¦¬ ê±°ëì ê³± ì°ì°ì (**)ë§ì ì°ê²°í©ì±ì
ëë¤. í¥ë¯¸ë¡ì´ ì ì¼ë¡ ííìì íê°ë ê²°í©ì±ê³¼ 무ê´íê² íì ì¼ìª½ìì ì¤ë¥¸ìª½ì¼ë¡ ì§íë©ëë¤.
| ì½ë | ì¶ë ¥ |
|
js |
첫째 í íê°í¨ ë째 í íê°í¨ 3 |
|
js |
첫째 í íê°í¨ ë째 í íê°í¨ 8 |
ì¬ë¬ ì°ì°ìì ì°ì ììê° ê°ì ëë ê²°í©ì±ì ê³ ë ¤í©ëë¤. ìììì ê°ì´ ì°ì°ìê° íëì´ê±°ë ì°ì°ìë¼ë¦¬ ì°ì ììê° ë¤ë¥¼ ê²½ì°ìë ê²°í©ì±ì´ ê²°ê³¼ì ìí¥ì 미ì¹ì§ ììµëë¤. ìëì ìì ìì ê°ì ì¢ ë¥ì ì°ì°ì를 ì¬ë¬ ë² ì¬ì©íì ë ê²°í©ì±ì´ ê²°ê³¼ì ìí¥ì 미ì¹ë ê²ì íì¸í ì ììµëë¤.
| ì½ë | ì¶ë ¥ |
|
js |
첫째 í íê°í¨ ë째 í íê°í¨ ì 째 í íê°í¨ 1 |
|
js |
첫째 í íê°í¨ ë째 í íê°í¨ ì 째 í íê°í¨ 512 |
|
js |
첫째 í íê°í¨ ë째 í íê°í¨ ì 째 í íê°í¨ 64 |
ìì ìì ìì ëëì
ì ì¢ê²°í©ì±ì´ë¯ë¡ 6 / 3 / 2ë (6 / 3) / 2ì ê°ìµëë¤. íí¸ ê±°ëì ê³±ì ì°ê²°í©ì±ì´ë¯ë¡ 2 ** 3 ** 2ë 2 ** (3 ** 2)ì ê°ìµëë¤. ê·¸ë¬ë¯ë¡ (2 ** 3) ** 2ë ê´í¸ë¡ ì¸í´ ì¤í ììê° ë°ë기 ë문ì ì íì ê°ì´ 64ë¡ íê°ë©ëë¤.
ì°ì ììë ê²°í©ì±ë³´ë¤ íì ì°ì íë¯ë¡, ê±°ëì 곱과 ëëì
ì ê°ì´ ì¬ì©íë©´ ëëì
ë³´ë¤ ê±°ëì ê³±ì´ ë¨¼ì ê³ì°ë©ëë¤. ì를 ë¤ì´ 2 ** 3 / 3 ** 2ë (2 ** 3) / (3 ** 2)ì ê°ì¼ë¯ë¡ 0.8888888888888888ë¡ ê³ì°ë©ëë¤.
ìì
3 > 2 && 2 > 1;
// true를 ë°í
3 > 2 > 1;
// 3 > 2ë trueì¸ë°, ë¶ë±í¸ ì°ì°ììì trueë 1ë¡ ë³íëë¯ë¡
// true > 1ì 1 > 1ì´ ëê³ , ì´ë ê±°ì§ì´ë¤.
// ê´í¸ë¥¼ ì¶ê°íë©´ (3 > 2) > 1ê³¼ ê°ë¤.
그룹íì ë¨ë½ì ëí ì°¸ê³ ì¬í
ìë íìì 그룹íë ì°ì ììê° ê°ì¥ ëì ê²ì¼ë¡ ëì´ë©ëë¤. ê·¸ë¬ë ì´ê²ì´ íì 그룹í 기í¸( ⦠) ë´ì ííìì´, í¹í ë¨ë½ê³¼ ê´ë ¨íì¬ ë¨¼ì íê°ëë¤ë ê²ì ì미íì§ë ììµëë¤.
ë¨ë½ì ì¡°ê±´ë¶ íê°ì ì 문 ì©ì´ì
ëë¤. ì를 ë¤ì´ ííì a &&(b + c)ìì aê° falsyì´ë©´ íì ííì(b + c)ì ê´í¸ ìì ìì´ë íê°ëì§ ììµëë¤. ë
¼ë¦¬ ë¶ë¦¬ ì°ì°ì("OR")ê° "ë¨ë½"ëìë¤ê³ ë§í ì ììµëë¤. ë
¼ë¦¬ì ë¶ë¦¬ì í¨ê» ë¤ë¥¸ ë¨ë½ ì°ì°ììë ë
¼ë¦¬ì ì°ê²°("AND"), nullish-coalescing, ì íì ì°ê²° ë° ì¡°ê±´ë¶ ì°ì°ìê° í¬í¨ë©ëë¤. ëª ê°ì§ ìê° ë ììµëë¤.
a || b * c; // `a`를 먼ì íê°íê³ , `a`ê° "truthy"ë¼ë©´ `a`를 ìì±í©ëë¤.
a && b < c; // `a`를 먼ì íê°íê³ , `a`ê° "falsy"ë¼ë©´ `a`를 ìì±í©ëë¤.
a ?? (b || c); // `a`를 먼ì íê°íê³ , `a`ê° `null`ê³¼ `undefined`ê° ìëë¼ë©´ `a`를 ìì±í©ëë¤.
a?.b.c; // `a`를 먼ì íê°íê³ , `a`ê° `null`ëë `undefined`ë¼ë©´ `undefined`를 ìì±í©ëë¤.
í
ë¤ì íë ì°ì ìì ë´ë¦¼ì°¨ì(19ë¶í° 1ê¹ì§)ì¼ë¡ ì ë ¬ëì´ ììµëë¤.
| ì°ì ìì | ì°ì°ì ì í | ê²°í©ì± | ì°ì°ì |
|---|---|---|---|
| 19 | 그룹 | ìì | ( ⦠) |
| 18 | ë©¤ë² ì ê·¼ | ì¢ê²°í©ì± | ⦠. ⦠|
| ê³ì°ë ë©¤ë² ì ê·¼ | ì¢ê²°í©ì± | ⦠[ ⦠] |
|
new (ì¸ì 리ì¤í¸ ì ê³µ)
|
ìì | new ⦠( ⦠) |
|
| í¨ì í¸ì¶ | ì¢ê²°í©ì± |
⦠( ⦠)
|
|
| ìµì ë ì²´ì´ë | ì¢ê²°í©ì± | ?. |
|
| 17 |
new (ì¸ì 리ì¤í¸ ìëµ)
|
ì°ê²°í©ì± | new ⦠|
| 16 | íì ì¦ê° | ìì | ⦠++ |
| íì ê°ì | ⦠-- |
||
| 15 | ë ¼ë¦¬ NOT | ì°ê²°í©ì± | ! ⦠|
| ë¹í¸ NOT | ~ ⦠|
||
| ë¨í ìë¶í¸ | + ⦠|
||
| ë¨í ë¶ì | - ⦠|
||
| ì ì ì¦ê° | ++ ⦠|
||
| ì ì ê°ì | -- ⦠|
||
typeof |
typeof ⦠|
||
void |
void ⦠|
||
delete |
delete ⦠|
||
await |
await ⦠|
||
| 14 | ê±°ëì ê³± | ì°ê²°í©ì± | ⦠** ⦠|
| 13 | ê³±í기 | ì¢ê²°í©ì± | ⦠* ⦠|
| ëë기 | ⦠/ ⦠|
||
| ëë¨¸ì§ | ⦠% ⦠|
||
| 12 | ëí기 | ì¢ê²°í©ì± | ⦠+ ⦠|
| 빼기 | ⦠- ⦠|
||
| 11 | ë¹í¸ ì¼ìª½ ìíí¸ | ì¢ê²°í©ì± | ⦠<< ⦠|
| ë¹í¸ ì¤ë¥¸ìª½ ìíí¸ | ⦠>> ⦠|
||
| ë¹í¸ ë¶í¸ ìë ì¤ë¥¸ìª½ ìíí¸ | ⦠>>> ⦠|
||
| 10 | ë¯¸ë§ | ì¢ê²°í©ì± | ⦠< ⦠|
| ì´í | ⦠<= ⦠|
||
| ì´ê³¼ | ⦠> ⦠|
||
| ì´ì | ⦠>= ⦠|
||
in |
⦠in ⦠|
||
instanceof |
⦠instanceof ⦠|
||
| 9 | ëë± | ì¢ê²°í©ì± | ⦠== ⦠|
| ë¶ë± | ⦠!= ⦠|
||
| ì¼ì¹ | ⦠=== ⦠|
||
| ë¶ì¼ì¹ | ⦠!== ⦠|
||
| 7 | ë¹í¸ AND | ì¢ê²°í©ì± | ⦠& ⦠|
| 7 | ë¹í¸ XOR | ì¢ê²°í©ì± | ⦠^ ⦠|
| 6 | ë¹í¸ OR | ì¢ê²°í©ì± | ⦠| ⦠|
| 5 | ë ¼ë¦¬ AND | ì¢ê²°í©ì± | ⦠&& ⦠|
| 4 | ë ¼ë¦¬ OR | ì¢ê²°í©ì± | ⦠|| ⦠|
| ë ë³í© ì°ì°ì | ì¢ê²°í©ì± | ⦠?? ⦠|
|
| 3 | ì¡°ê±´ (ì¼í) | ì°ê²°í©ì± | ⦠? ⦠: ⦠|
| 2 | í ë¹ | ì°ê²°í©ì± | ⦠= ⦠|
⦠+= ⦠|
|||
⦠-= ⦠|
|||
⦠**= ⦠|
|||
⦠*= ⦠|
|||
⦠/= ⦠|
|||
⦠%= ⦠|
|||
⦠<<= ⦠|
|||
⦠>>= ⦠|
|||
⦠>>>= ⦠|
|||
⦠&= ⦠|
|||
⦠^= ⦠|
|||
⦠|= ⦠|
|||
⦠&&= ⦠|
|||
⦠||= ⦠|
|||
⦠??= ⦠|
|||
yield |
ì°ê²°í©ì± | yield ⦠|
|
yield* |
yield* ⦠|
||
| 1 | ì¼í / ìíì¤ | ì¢ê²°í©ì± | ⦠, ⦠|