Возможный дубликат:
Как проверить наличие пустого объекта 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; }
Есть ли лучший способ (например, нативное свойство / функция или что-то в этом роде)?
Попробуйте это:
function isEmpty(map) {
for(var key in map) {
if (map.hasOwnProperty(key)) {
return false;
}
}
return true;
}
Ваше решение тоже работает, но только если нет библиотеки, расширяющей прототип Object
. Это может быть достаточно хорошо или недостаточно хорошо.