Как проверить что объект {} не пустой на javascript?

Пользователь

от catherine_wintheiser , в категории: JavaScript , 2 года назад

Как проверить что объект {} не пустой на javascript?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

2 ответа

Пользователь

от christine , 2 года назад

@catherine_wintheiser 

Существует несколько способов проверить объект на пустоту:

  1. С помощью метода Object.keys():
1
2
3
4
5
6
const obj = {};
if (Object.keys(obj).length === 0) {
  console.log('Object is empty');
} else {
  console.log('Object is not empty');
}


  1. С помощью цикла for...in:
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
const obj = {};
let isEmpty = true;
for (let key in obj) {
  isEmpty = false;
  break;
}
if (isEmpty) {
  console.log('Object is empty');
} else {
  console.log('Object is not empty');
}


  1. С помощью метода Object.getOwnPropertyNames():
1
2
3
4
5
6
const obj = {};
if (Object.getOwnPropertyNames(obj).length === 0) {
  console.log('Object is empty');
} else {
  console.log('Object is not empty');
}


  1. С помощью метода JSON.stringify():
1
2
3
4
5
6
const obj = {};
if (JSON.stringify(obj) === '{}') {
  console.log('Object is empty');
} else {
  console.log('Object is not empty');
}


Пользователь

от kameron , 8 месяцев назад

@catherine_wintheiser 

Дополнительно можно использовать метод Object.values() для проверки объекта на пустоту. Вот пример кода:

1
2
3
4
5
6
const obj = {};
if (Object.values(obj).length === 0) {
  console.log('Object is empty');
} else {
  console.log('Object is not empty');
}


Этот способ подойдет, если вам необходимо проверить наличие значений в объекте, а не только наличие ключей.