반응형
오늘은 기초중의 기초! 연산자를 정리해보았다
연산자(operator)는 연산을 수행하여 값을 만들어 낸다. (=+- 등)
피연산자(operand)는 연산의 대상이다. 이 값으로 표현식을 만든다
→ 연산자는 피연산자와 짝을 이룬다. (환ssang의 커플)
할당 연산자
좌항의 변수에 값을 할당하므로 변수 값이 변하는 부수효과가 있다
- 단순대입연산자 → 좌항에 = 우측표현식 으로 표현한다.
- 복합대입연산자 → 좌항에 += 우항에서 실행된 평가결과를 할당한다 **+=는 예시
연산자 | 예시 | 동일 표현 |
= | x = 5 | x = 5 |
+= | x += 5 | x = x + 5 |
-= | x -= 5 | x = x - 5 |
*= | x *= 5 | x = x * 5 |
/= | x /= 5 | x = x / 5 |
%= | x %= 5 | x = x % 5 |
증감 연산자
증감연산자는 변수의 값을 1씩 증가시키거나 감소시키는 연산자이다
흥미로운 점은 연산자가 변수 앞에 위치하느냐 뒤에 위치하느냐에 따라서 연산순서가 달라진다
연산자 | 예시 | 동일표현 |
++ | ++i, i++ | i = i + 1 |
-- | i--, --i | i = i - 1 |
전위 연산자 vs 후위 연산자
연산자가 앞에 위치하면 전위연산자(++n) 뒤에 위치하면 후위연산자(n++)라고 한다
전위 연산자와 후위 연산자의 차이는
변수 b에 순수a 의 값이 할당(선할당)되느냐 아니면 ++a의 연산된 값이 할당(후증가)이다
보너스로
후위연산자인 a++ 의 a 값은 후할당이라 a++ 연산식 내부의 a 값은 변하지 않는다
전위연산자인 ++b 의 b 값은 선할당이라 ++b 연산식 내부의 b 값은 바뀌어 있다
→ 이후에 a 값을 찍어보면 그제서야 무!줙!건! 바뀌어 있다
비교 연산자
비교 연산자는 좌항과 >= 우항의 피연산자를 비교하고 boolean 을 반환한다
연산자 | 예시 | 설명 |
== | a == b | a 와 b 는 값이 같다 |
=== | a === b | a 와 b 는 값과 타입이 같다 |
!= | a != b | a 와 b 는 값이 다르다 |
!== | a !== b | a 와 b 는 값과 타입이 다르다 |
동등 비교
암묵적 타입 변환을 이용해 값이 같은지를 비교한다. (그래서 타입이 달라도 괜츈하다)
일치 비교
타입과 값이 같은지를 비교한다. (확실하게 비교가 가능하다)
요녀석은 자바스크립트 버그인데, 수정하면 기존 로직이 꼬여버려 내버려두었다고 한다🥸
반응형
'JavaScript' 카테고리의 다른 글
JavaScript - throw / try / catch / finally (1) | 2023.11.14 |
---|---|
JavaScript - Call By Value, Call By Reference (3) | 2023.11.09 |
JavaScript - 실행 컨텍스트란 (2) | 2023.10.31 |
JavaScript - Primitive Value & Casting (2) | 2023.10.31 |
JavaScript - 비트마스킹 적용하기 (Feat.비트연산자) (1) | 2023.10.12 |
댓글