JavaScript 논리 연산자 정보

8378 단어 자바스크립트

falsy와 truthy



false 는 Boolean 에서 진위 값으로 변환할 때 false 가 되는 값을 가리킵니다. 반대로 truthy는 Boolean에서 진위 값으로 변환할 때 true가 되는 값을 가리킵니다. 일러스트로 알기 쉽게 정리해 보았습니다.
코드에서도 확인합시다.

JS
let a = null;
console.log(Boolean(a)); //false

let b = 1
console.log(Boolean(b)); //true

논리 연산자 (OR : 논리합), && (AND : 논리 곱)



JavaScript에는 || (OR: 논리합), && (AND: 논리곱) 논리 연산자가 있습니다.

OR: 논리합



논리합(or 조건)의 기법은 ||이 됩니다. 논리합 or에는 네 가지 가능한 논리적 조합이 있습니다.

JS
console.log( true || true );   // true
console.log( false || true );  // true
console.log( true || false );  // true
console.log( false || false ); // false

or 조건은 첫 번째 참값을 찾는 거동을 취합니다(왼쪽부터 순서대로).

JS
console.log( 1 || 0 ); // 1 (1 は真)
console.log( null || 1 ); // 1 (1 は最初の真値)
console.log( null || 0 || 1 ); // 1 (最初の真値)

AND : 논리 제품



논리 곱(and 조건)의 기법은 &&입니다. and 조건은 왼쪽에서 순서대로 참값을 평가하고 첫 번째 가짜 값 또는 가짜 값이 없으면 마지막 값을 반환합니다.

JS
console.log( true || true );   // true
console.log( false || true );  // false
console.log( true || false );  // false
console.log( false || false ); // false

JS
console.log( 1 && 0 ); // 0
console.log( 1 && 5 ); // 5

( 1 && 0 )에서는 1에서는 참으로 다음으로 진행 0은 거짓이므로 거기에서 처리가 정지해 0을 돌려주고 있습니다.
( 1 && 5 )에서는 1에서는 참으로 다음으로 진행 5도 참이므로 마지막으로 평가된 참 5를 반환하고 있습니다.

AND와 OR의 응용 예



먼저 함수 hello를 준비합니다. 인수에 name을 설정하여 브라우저에서 hello name으로 출력할 수 있습니다.

JS
function hello(name) {
    console.log('hello ' + name);
}

hello('Tom'); //hello Tom
hello(); //hello undefined

인수를 설정하지 않으면 hello undefined로 출력됩니다. 이것을 if 문을 이용하여 인수가 없을 때에도 hello Tom으로 출력되도록 다시 씁니다. (!는 NOT 연산자라고 부르고, 진위치형으로 변환한 후 역의 값을 돌려줍니다.)

JS
function hello(name) {
    if(!name) {
        name = "Tom"
    }
    console.log('hello ' + name);
}

hello(); //hello Tom

이 if 문을 논리 연산자를 사용하여 다시 작성해 보겠습니다.

JS
function hello(name) {
    name = name || "Tom"
    console.log('hello ' + name);
}

hello(); //hello Tom

이 경우 우선 인수에 아무것도 설정되어 있지 않기 때문에 인수에는 undefined(falthy)가 건네집니다. 다음으로 name || "Tom"에서는 "Tom"이 truthy이므로 Tom이 반환되고 결과적으로 name에는 "Tom"이 저장됩니다.
따라서 콘솔은 hello Tom을 출력합니다.

참고



Udemy: 【JS】가치에서 배우고 싶은 사람을 위한 JavaScript 메커니즘
현대 자바 스크립트 자습서 : htps : // 그럼. 그럼 sc 리 pt. 인후 / ぉ 기카 l 오페라와 rs

좋은 웹페이지 즐겨찾기