SUE 개발 블로그

자바스크립트 단락회로 평가 본문

JavaScript

자바스크립트 단락회로 평가

이수광 2023. 12. 11. 22:09

논리연산자를 활용한 단락회로 평가

console.log(true && true);
// 양쪽의 피연사자가 true 여야 true. 만약 앞이 false이면 뒤는 볼 필요가 없음.
// 이렇게 피연산자 중에 뒤에 위치한 피연산자를 확인할 필요없는 것을
// "단락회로 평가" 라고 한다.

console.log(true || false);
// 둘중의 한 쪽만 true 여도 true
// 앞에 값이 true가 되면 뒤에 값이 뭐가 오든 상관이없음.
// "단락회로 평가" 가 이루어짐. (앞의 true만 보고 결과종료)

console.log(!true);

응용하여 사용하기 (코드 뜯어보며 이해하기)

const getName = (person) => {
  if (!person) {
    return "객체가 아닙니다.";
  }
  return person.name;
};

let person;
const name = getName(person);
console.log(name);

를 응용하여 새로 짠 코드 ⬇️


const getName = (person) => {
  const name = person && person.name;
  return name || "객체가 아닙니다.";
};

let person = { name: "이수광" };
const name = getName(person);
console.log(name);