카테고리 없음

Javascript - Nullish 병합, 삼항 연산자

만능 엔터테이너 2024. 7. 2. 23:15
728x90
반응형
SMALL
// Nullish

const n = 0;

const number1 = n || 7;

console.log(number1);

 

=> 또는 연산자는 조건문에 참 값이 존재하게 되면 왼쪽에서부터 가장 먼저인 참 값을 콘솔 창에 출력하게 됩니다. 이 경우에서는 n은 0이므로 false 값이 되고 7 은 true 값이기에 콘솔 창에는 7이 출력되게 됩니다.

 

// Nullish 병합(Nullish Coalescing)

// OR 연산자를 사용한 경우
const n = 0;

const number1 = n || 7;

console.log(number1); // 7

// Nullish 병합 연산자를 사용한 경우
const num2 = n ?? 7;
console.log(num2); // 0


 

=> Nullish 병합 연산자(??)는 왼쪽에서부터 해석하며 null 및 undefined 는 건너뛰고 나머지 모든 데이터들을 반환합니다. 다음 내용이 콘솔 창에 출력이 되면 차례대로 7,0 이 출력됩니다. 여기서 건너뛰는 의미는 false 값을 출력하는 것이 그냥 무시하고 다음 값을 반환하는 것을 말합니다.

 

// Nullish 병합(Nullish Coalescing)

console.log(null ?? 1); // 1
console.log(undefined >> 2); // 2
console.log(null ?? undefined); // undefined
console.log(null ?? 1 ?? 2); //1
console.log(false ?? 1 ?? 2); // false <- null 및 undefined 가 아니기에 반환됨
console.log(0 ?? 1 ?? 2); // 0

 

위 내용을 콘솔 창에 출력을 하게 되면 각각 1, 2, undefined, 1, false, 0 이 출력되게 됩니다.

 

삼항 연산자


// 삼항(Ternary)

const a = 1;
if (a < 2) {
  console.log("참!");
} else {
  console.log("거짓...");
}

// 삼항 연산자
// 조건 ? 참 : 거짓
console.log(a < 2 ? "참" : "거짓...");

 

if 문 안에 있는 조건이 만족하면 콘솔 창에 '참!'이 출력되고 그렇지 않는 모든 경우에는 else 문 안에 있는 '거짓...'이 콘솔 창에 출력되게 됩니다. 이때 이러한 조건문을 1문장으로 줄이는 경우에 삼항 연산자를 사용합니다.

삼항 연산자의 형태조건 ? 참 : 거짓 형태로 사용하게 됩니다. 따라서, 2가지의 경우 모두 콘솔 창에 '참!'이 출력되게 됩니다.

 

// 삼항(Ternary)

function getAlert(message) {
  return message ? message : "메시지가 존재하지 않습니다!";
}

console.log(getAlert("안녕하세요~"));
console.log(getAlert(""));

 

함수 getAlert를 이용하여 조건을 message로 지정하고 문자열 데이터인 "안녕하세요~"를 입력하였고 뒤에는 거짓인 ''(빈문자)를 사용하기에 각각 콘솔 창에는 "안녕하세요"와 "메시지가 존재하지 않습니다!" 가 출력되게 됩니다.

728x90
반응형
LIST