본문 바로가기
JavaScript

JavaScript - 연산자

by 새발개발JA 2023. 11. 7.
반응형

 

오늘은 기초중의 기초! 연산자를 정리해보았다

 

연산자(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 + 1 이기 때문에)

 

보너스로 

후위연산자인 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 는 값과 타입이 다르다

 

 

동등 비교

암묵적 타입 변환을 이용해 값이 같은지를 비교한다. (그래서 타입이 달라도 괜츈하다)

 

일치 비교

타입과 값이 같은지를 비교한다. (확실하게 비교가 가능하다)

 

 

요녀석은 자바스크립트 버그인데, 수정하면 기존 로직이 꼬여버려 내버려두었다고 한다🥸

흥미롭군

 

 

 

 

반응형

댓글