Javascript 논리 연산자
2023. 1. 14. 16:09ㆍJavaScript/Modern Javascript
| 목차 |
| 1. OR ( || ) |
| 2. AND( && ) |
| 3. NOT( ! ) |
1. OR( || )
OR 연산자의 표현 방법은 "||"로 나타낼 수 있다.
이항 연산자로써, 피연산자 앞 뒤로 두 가지 받을 수 있다.
문법(Syntax)
a || b ( || c ...)
OR 연산자의 반환 값은 true / false로 불린값을 조작하는 데에 쓰인다.
OR 연산자는 뒤에 나올 AND 연산자와 비교하여 보면 좋다.
console.log( true || true ); // true
console.log( false || true ); // true
console.log( true || false ); // true
console.log( false || false ); // false
둘 중 하나라도 true 인경우에는 true를 반환해준다.
하지만, 둘다 거짓 값일 경우 false를 반환해준다.
주어진 조건중 하나라도 참인지 확인하기위해서 사용한다.
truthy 찾기
자바스크립트에서느 피연산자가 불린형인 경우 뿐만 아닌 경우, 추가 기능을 제공한다.
문법(Syntax)
result = value 1 || value 2 || value 3
- 가장 왼쪽에서 부터 시작해 피연산자를 평가한다.
- 피연산자를 불린형으로 평가한후 true가 나올경우 원래 값을 반환한다.
- 피연산자가 모두 false인 경우 마지막 피연산자를 반환한다.
예시(Sample)
console.log( "a" || 123 || 456 ); // a
console.log( undefined || "a" || "b" ); // a
console.log( undefined || NaN || null); // null
const host = process.env.DB_HOST || "127.0.0.1"
// DB_HOST라는 변수가 있다면(truthy) host에 할당하고,
// DB_HOST라는 변수가 없다면(falsy) "127.0.0.1"을 host에 할당한다.
2. AND( && )
AND 연산자는 && 로 표현할 수 있다.
문법(Syntax)
result = a && b
AND 연산자는 두 연산자가 모두 참일 때에 true르 반환하고, 하나라도 거짓인 경우 false를 반환한다.
console.log( true && true ); // true
console.log( false && true ); // false
console.log( true && false ); // false
console.log( false && false ); // false
falsy 찾기
문법(Syntax)
result = value 1 && value 2 && value 3
- 가장 왼쪽에서 부터 시작해 피연산자를 평가한다.
- 피연산자를 불린형으로 평가한 후 false가 나오면 평가를 멈추고, 해당 피연산자를 반환한다.
- 피연산자가 모두 true인 경우 마지막 피연산자를 반환한다.
예시(Sample)
console.log( "a" && 123 && 456 ); // 456
console.log( undefined && "a" && "b" ); // undefined
console.log( undefined && NaN && null); // undefined
3. NOT ( ! )
true라면 false를 false라면 true를 반환한다.
원래의 값의 반대형태로 반환해준다.
문법(Syntax)
result = !value
예시(Sample)
console.log( !true ); // false
console.log( !0 ); // true
참고자료
https://ko.javascript.info/logical-operators
'JavaScript > Modern Javascript' 카테고리의 다른 글
| Javascript Switch 문 (0) | 2023.01.14 |
|---|---|
| Javascript 반복문 (0) | 2023.01.14 |
| Javascript 조건문 (0) | 2023.01.14 |
| Javascript 형변환 (0) | 2023.01.14 |
| Javascript 데이터 타입 (1) | 2023.01.14 |