본문 바로가기
개발공부/Javascript

Javascript : 모든 연산자 정리 [산술연산자/비교연산자/논리연산자]

by 촤리 2022. 7. 13.

산술 연산자

산술 연산자는 두 개의 숫자 값을 피연산자로 받아 하나의 숫자 값으로 반환한다.

산술 연산자에는 더하기(+) 뺴기(-) 곱하기(*) 나누기(/) 나머지(%) 등이 있다.

연산자 설명 예제
더하기 (+) x값과 y값을 더한값을 반환한다. 3 + 3 = 6
빼기 (-) x값과 y값을 뺀값을 반환한다 5 - 2 = 3
곱하기 (*) x값과 y값을 곱한값을 반환한다 3 * 3 = 6
나누기 (/) x값과 y값을 나눈값을 반환한다 8 / 2 = 4
나머지 (%) x값과 y값을 나누고 남은 나머지값을 반환한다 20 / 3 = 2
증가 (++) 피연산자에 1을 더한다.
전위 연산자(++x)로 사용하면 x에 1을 더한 값이 반환되고
후위 연산자(x++)로 사용한 경우 피연산자에 1을 더하기 전의 값을 반환한다.
전위 연산자 : 반환전에 더함 
후위 연산자 : 반환후에 더함
감소 (--) 피연산자에 1을 뺸다.
전위 연산자(--x)로 사용하면 x에 1을 뺸 값이 반환되고
후위 연산자(x--)로 사용한 경우 피연산자에 1을 빼기 전의 값을 반환한다.
전위 연산자 : 반환전에 뻄
후위 연산자 : 반환후에 뻄
단항 부정 (-) x의 부호를 반대로 바꾼 값을 반환한다. x가 3일때 -x는 -3을 반환한다.
단항 플러스(+) x가 Number타입이 아니면 숫자로 변환을 시도한다. +"3" 은 3을 반환한다.
+true는 1을 반환한다.
거듭제곱 (**) x값을 거듭제곱한 결과를 반환한다. 2 ** 3 은 8을 반환한다 (2*2=4*2=8)
10 ** -1은 0.1을 반환한다.

 

비교 연산자

비교 연산자는 피연산자를 서로 비교하고, 비교 결과가 참인지에 따라 논리 값을 반환한다.

const var1 = 3;
const var2 = 4;
연산자 내용 true를 반환하는 예제
동등 (==) 피연산자가 서로 같으면 true를 반환한다
* 타입과 상관없이 값만 같으면 true를 반환한다.
3 == var1(3)
"3" == var1(3)
3 == "3"
부등 (!=) 피연산자가 서로 다르면 true를 반환한다. var1(3) != 4
var2(4) != "3"
일치(===) 두 피연산자의 값과 타입이 모두 같은 경우 true를 반환한다. 3 === var1(3)
불일치(!==) 피연산자의 값 또는 타입이 서로 다를 경우 true를 반환한다. var1(3) !== "3"
3 !== "3"
크다 (>) 왼쪽 피연산자가 오른쪽 피연산자보다 크면 true를 반환한다. var2(4) > var1(3)
"12" > 2
크거나 같다 (>=) 왼쪽 피연산자가 오른쪽 피연산자와 같거나 크면 true를 반환한다. var2(4) >= var1(3)
var1(3) >= 3
작다 (<) 왼쪽 피연산자가 오른쪽 피연산자보다 작으면 true를 반환한다 var1(3) < var2(4)
"2" < 12
작거나 같다 (<=) 왼쪽 피연산자가 오른쪽피연산자와 같거나 작으면 true를 반환한다. var1(3) <= var2(4)
var2(4) <= 5

* 많이하는 실수로  "=>"를 사용하는 것인데 이건 연산자가 아니라 화살표 함수의 표기법이다.

 


 

논리 연산자

논리 연산자는 보통 Boolean(논리) 값과 함께 사용해서 불리언 값을 반환한다.

그러나 &&와 || 연산자는 사실 두 피연산자 중 하나를 반환하는 것으로 만약 둘 중 하나가 불리언 값이 아니라면 논리 연산자의 반환값도

불리언이 아닐수 있다.

연산자  내용
논리 AND ( && ) 연산자 두개가 둘다 true일 때 true를 반환한다.
논리 OR ( || ) 연산자 둘중 하나가 true이면 true를 반환한다
논리 NOT ( ! ) true는 false를 반한하고 그외에는 ture를 반환한다.

flase로 변환할 수 있는 표현식은 평가 결과가 null, 0, NaN, 빈 문자열(""), undefined 인 경우이다.

&& (논리 AND) 연산자 예제

var a1 = true && true		// true
var a2 = true && flase		// false
var a3 = flase && true		// false	
var a4 = false && (3 == 4);		// false
var a5 = 'Cat' && 'Dog'		// Dog
var a6 = false && 'Cat'		// false
var a7 = 'Cat' && false		// false


|| (논리 OR) 연산자 예제

var o1 = true || true		// true
var o2 = true || flase		// true
var o3 = flase || true		// true	
var o4 = false || (3 == 4);		// false
var o5 = 'Cat' || 'Dog'		// Cat
var o6 = false || 'Cat'		// Cat
var o7 = 'Cat' || false		// Cat


! (논리 NOT) 연산자 예제
var n1 = !true		// false
var n2 = !false		// true
var n3 = !'Cat'		// false

 

댓글