<强>可能重复:结果   如何测试从一个空的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原型没有图书馆。它可以是或可以不是足够好。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top