Javascript: проверка, не имеет ли объект никаких свойств или карта / ассоциативный массив пуст [дубликаты]

Возможный дубликат:
Как проверить наличие пустого объекта Javascript из JSON?

Есть ли простой способ проверить, что у объекта нет свойства, в Javascript? Или, другими словами, простой способ проверить, является ли карта / ассоциативный массив пустым? Например, допустим, у вас было следующее:

var nothingHere = {};
var somethingHere = {foo: "bar"};

Есть ли простой способ определить, какой из них «пустой»? ? Единственное, о чем я могу думать, это что-то вроде этого:

function isEmpty(map) {
   var empty = true;

   for(var key in map) {
      empty = false;
      break;
   }

   return empty;
}

Есть ли лучший способ (например, нативное свойство / функция или что-то в этом роде)?

33
задан Community 23 May 2017 в 12:03
поделиться

1 ответ

Попробуйте это:

function isEmpty(map) {
   for(var key in map) {
     if (map.hasOwnProperty(key)) {
        return false;
     }
   }
   return true;
}

Ваше решение тоже работает, но только если нет библиотеки, расширяющей прототип Object. Это может быть достаточно хорошо или недостаточно хорошо.

45
ответ дан 27 November 2019 в 18:31
поделиться
Другие вопросы по тегам:

Похожие вопросы: