JavaScript

Guard and Default Operators

leemagnon 2020. 1. 4. 15:57

Guard and Default Operators in Javascript

&& → 논리 AND 연산자 - The Guard Operator

// Guard 연산자 적용 전
var get_username = function(){
  if(loggedin){
    return username;
  }
};

// Guard 연산자 적용 후
var get_username = function() { return loggedin && username; }

만약 loggedin이 true이면 username 값이 반환되고, false이면 false가 반환된다. loggedin이 username을 보호하는 방패처럼 동작한다.

 

|| → 논리 OR 연산자 - The Default Operator

// Default 연산자 적용
var name = name || "no name assigned";

만약 name이 true이면 name을 반환하고, name이 false이면 "no name assigned"를 반환한다. 변수에 기본값을 할당하기 위해 종종 사용되고, 프로그램이 'undefined' 변수에 대한 작업을 시도할 때 중단되는 것을 예방한다.

 

name이 false나 undefined 외에도 '', 0, NaN, null 같은 거짓인 값들이어도 "no name assigned"를 대신 반환한다.