논리 연산자 (&& , ||) 를 사용하여 연산을 진행 할 때,
좌측 식의 값에 따라 우측 식의 실행 여부를 판단하는 동작
console.log(false && true) // false
console.log(true || false) // true
&& And 연산자의 단락 회로 평가는,
true 일 때 true 인 값을 반환하므로,
좌측 값이 false인 경우 우측값을 체크하지 않고 바로 false를 반환한다.
|| Or 연산자의 단락 회로 평가는,
좌측 우측 중 true 인 값을 반환하므로,
좌측 값이 true인 경우 우측값을 체크하지 않고 바로 true를 반환한다.
const getName = (person) => {
return person && person.name;
};
let person;
const name = getName(person);
const getName2 = (person) => {
const name = person && person.name;
return name || "no Object";
};
let person = null;
const name = getName(person);