IT/JavaScript

[Javascript] value가 null일 때 object에 포함시키지 않기

겨발자 2021. 12. 15. 13:52

javascript의 object를 구성할 때 value가 null일 경우는 object에 포함시키지 않고자 하는 경우가 있다.

그런 경우에는 && 논리 연산자를 활용할 수 있다.

 

Object.assign을 활용하면 아래와 같이 활용 가능하다.

const a = null;
const b = 200;

console.log(Object.assign({}, a && {a}));
// {}

console.log(Object.assign({}, b && {b}));
// {b: 200}

&& 연산자의 경우, 연산자 좌측의 값이 참에 해당하는 값일 경우, 연산자 우측의 값을 반환한다.

좌측의 값이 거짓에 해당하는 값일 경우, 그대로 연산자 좌측의 값을 반환한다.

 

따라서 a의 경우 null이므로, assign 메소드의 두 번째 인자가 null이 되어 빈 object를 반환한다.