Lodash의 isEmpty
를 사용하지 않고 바닐라 자바스크립트로 객체가 빈 객체인지 확인하는 방법을 정리합니다.
방법 1: Object.keys
사용
function isEmpty(obj) {
return Object.keys(obj).length === 0 && obj.constructor === Object;
}
const obj = {};
console.log(isEmpty(obj)); // true
const nonEmptyObj = { key: 'value' };
console.log(isEmpty(nonEmptyObj)); // false
방법 2: for...in
루프 사용
function isEmpty(obj) {
for (let key in obj) {
if (obj.hasOwnProperty(key)) {
return false;
}
}
return true;
}
const obj = {};
console.log(isEmpty(obj)); // true
const nonEmptyObj = { key: 'value' };
console.log(isEmpty(nonEmptyObj)); // false
방법 3: JSON 문자열 비교
function isEmpty(obj) {
return JSON.stringify(obj) === '{}';
}
const obj = {};
console.log(isEmpty(obj)); // true
const nonEmptyObj = { key: 'value' };
console.log(isEmpty(nonEmptyObj)); // false
이 방법들은 모두 Lodash의 isEmpty
함수 없이 객체가 비어 있는지 확인할 수 있습니다.
필요에 따라 가장 적합한 방법을 선택하여 사용하시면 됩니다.
'javascript' 카테고리의 다른 글
[240809 TIL] scrollBehavior(당겨서 새로고침방지) (0) | 2024.08.09 |
---|---|
[240801 TIL] ConvertToWebP(sharp) (0) | 2024.08.01 |
[240707 TIL] 에러 던지기 (0) | 2024.07.07 |
[240706 TIL] class 프로퍼티 선언법 두가지 (0) | 2024.07.07 |
[240626 TIL] createObjectUrl (0) | 2024.06.26 |