JS

연산자 - 단항, 비교, 부정

hwongje 2024. 4. 16. 14:17

단항연산자

단항연산자는 피연산자가 한개인 연산자로 피연산자에 단항연산자를 붙여 사용한다.

++ : 값을 1 증가 시키는 연산자

-- : 값을 1 감소 시키는 연산자

++값 : 전위 연산자 == 선증감 후출력
값++: 후위 연산자 == 선출력 후증감

 

let x = 5

console.log(x++); // x = 5;

console.log(++x); // x = 6;

 

위와 같이 ++가 앞에 붙냐 뒤에 붙냐에 따라 출력되는 값이 달라진다.

그리고 재호출 할때마다 값이 바뀌는걸 유의해야한다.

 

let x = 5;
let y = 10;

console.log(x++ + y); // 15 , 후위연산자로 x는 6이되었지만 5를 출력하고 6이 됨.
console.log(++x + y); // 17 , 전위연산자로 x값에 1을 더한뒤 출력이 됨.

// 16이 아니냐 라고 할수있지만 이미 x++ = (5 + 1 = 6)이라는 값이 호출된 상태에서
// x의 재호출로 ++x = (1 + 6 = 7)이라는 값이 나와 (++x + y = 17) 이라는 결론이 나온다.

 

 

비교 연산자

비교연산자는 두 개의 피연산자의 상대적인 크기를 비교하여 true인지 false인지 값을 반환하는 연산자이다.

자바스크립트의 데이터 타입중 숫자와 문자열을 비교할수있으며

1. 피연산자가 둘 다 숫자라면, 숫자의 크기를 비교한다.

2. 피연산자가 둘 다 문자열이라면 문자열의 첫 번째 문자부터 알파벳 순으로 비교한다.

3. 비교연산자는 피연산자가 서로 다른 타입이라면, 비교를 할수 없음으로 항상 false가 나온다.

   하지만 동등연산자(==)의 경우, 타입신경 안쓰고 값만 비교하기 때문에 타입이 다르더라고 true가 나올수있다.

비교 연산자 설명
== 왼쪽 피연산자와 오른쪽 피연산자가 값이 같다면 true 반환
=== 왼쪽 피연산자와 오른쪽 피연산자가 값과 타입까지 같다면 true반환
> 왼쪽 피연산자가 오른쪽 피연산자보다 값이 크다면 true 반환
< 왼쪽 피연산자가 오른쪽 피연산자보다 값이 작다면 true 반환
>= 왼쪽 피연산자가 오른쪽 피연산자보다 값이 크거나 같다면 true 반환
<= 왼쪽 피연산자가 오른쪽 피연산자보다 값이 작거나 같다면 true 반환

 

 

let x = 1;  // 숫자
let y = 2;  // 숫자
let a = "1";  // 문자열

console.log(x > y); // false
console.log(x < y); // true
console.log(a == x); // true 문자열과 숫자비교지만 ==는 값만 측정하기에 true
console.log(a === x); // false ===는 값과 타입을 비교하기에 타입이 다르므로 false

 

 

부정 연산자

논리를 부정할때 쓰이는 연산자로 true 를 false로, false를 true로 변경하기때문에 boolean 타입에만 사용할 수 있는 연산자이다.

console.log(!true); // false

console.log(!false); // true

let x = 1;

console.log(x != 1); // false
console.log(x != 2); // true