### 비교 연산자
JavaScript에서는 비교연산자에 여러 가지가 있다.
a의 기준에서 비교를 합니다.
a > b
a < b
a >= b
a <= b
a == b
이중 같음 기호 ==는 같음 테스트를 의미하고,
여기서 주의해야 할 점이 단일 같음 기호 =는 값을 할당하는 것을 의미한다.
a != b
!는 not의 의미를 나타내기 때문에 단일 피연산자의 값을 반대로 바꿔서 변환할 수도 있다.!를 여러 번 사용해서 값을 여러 번 바꿀 수도 있다.
let result = true; console.log(!result); // false console.log(!!result); //true
모든 비교 연산자는 boolean 값을 반환한다.
true: 맞는 경우를 의미한다.
false: 틀린 경우를 의미한다.console.log(7 > 3); // true console.log(5 < 2); // false
또는 비교연산의 결과를 변수에 담을 수도 있다.
let result = 9 < 4; console.log(result); //false
다른 유형의 값을 비교할 때 자바스크립트는 값을 숫자로 변환한다.
아래의 코드를 통해 살펴보면console.log('9' > 11); // false console.log(8 == '08'); // true
boolean을 살펴보면 true는 1이되고, false는 0이 된다.
console.log(true == 1); //true console.log(false == 0); //true
위의 다른 유형과의 비교에서 ==로 비교를 하고 있는데 동등 연산자(==)는 두 개의 피연산자가 동일한지 확인하고, boolean 값을 리턴한다.
console.log(0 == false); // true console.log('' == false); // true
일치연산자(===)와는 다르게 다른 타입의 피연산자들끼리의 비교를 한다.
console.log(0 === false); // false
null 또는 undefined는 다르 값과 비교할 때 주의해야할 점이 있다.
엄격한 동등성 검사를 해야할 때는 ===를 사용해야 된다.
console.log(null === undefined); // false
엄격하지 않은 검사를 해도 될 때는 ==를 사용한다.
console.log(null == undefined); // true
null과 undefined에서 한 가지 더 알아둘 점
null/undefined는 숫자로 변환된다.
- null: 0
- undefined: NaN
모던자바스크립트를 공부한 뒤 작성하였습니다.
https://javascript.info/comparison