[JS] 단축평가 적용

two-threeMin·2022년 6월 23일
0

Truthy, Falsy

  • Falsy
if (false)
if (null)
if (undefined)
if (0)
if (-0)
if (0n)
if (NaN)
if ("")
  • Truthy
Falsy를 제외한 모든 값

단축평가

'Cat' && undeinfed > undefined
//논리곱'&&'은 Falsy 값이 하나라도 있을 경우 Falsy로 평가한다.

'Cat' && 'Dog' > 'Dog'
//피연산자 모두 truthy일 경우 우항에 있는 피연산자가 평가된다.
'Cat' || undeinfed > undefined
//논리합'||'은 Truthy 값이 하나라도 있을 경우 Truthy 쪽으로 평가된다.

'Cat' || 'Dog' > 'Cat'
//피연산자 모두 truthy일 경우 좌항에 있는 피연산자가 평가된다.

undefined || null > null
//피연산자 모두 falsy일 경우 우항에 있는 피연산자가 평가된다.

if문 대신 단축평가

localStorage에 값이 존재하면 데이터를 가져오고, 'undefined'일 경우 빈 배열 세팅

if (!localStorage.getItem('runiary'))
  localStorage.setItem('runiary', JSON.stringify([]));
//좌항이 truthy, falsy 둘다 평가될 수 있고, 우항은 항상 truthy이므로 '논리합' 이용
localStorage.getItem('runiary') ||
  localStorage.setItem('runiary', JSON.stringify([]));
};

0개의 댓글