Javascript:检查对象是否没有属性,或者映射/关联数组是否为空 [英] Javascript: Checking if an object has no properties or if a map/associative-array is empty
本文介绍了Javascript:检查对象是否没有属性,或者映射/关联数组是否为空的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
在Javascript中有没有一个简单的方法来检查对象是否没有属性?或者换句话说,检查地图/关联数组是否为空的简单方法?例如,假设你有以下几点:
Is there an easy way to check if an object has no properties, in Javascript? Or in other words, an easy way to check if a map/associative array is empty? For example, let's say you had the following:
var nothingHere = {};
var somethingHere = {foo: "bar"};
有没有一个简单的方法来判断哪个是空?我唯一可以想到的是这样的:
Is there an easy way to tell which one is "empty"? The only thing I can think of is something like this:
function isEmpty(map) {
var empty = true;
for(var key in map) {
empty = false;
break;
}
return empty;
}
<
Is there a better way (like a native property/function or something)?
推荐答案
尝试这样:
function isEmpty(map) {
for(var key in map) {
return !map.hasOwnProperty(key);
}
return true;
}
您的解决方案也可以,但只有当没有库扩展 Object
原型。它可能或可能不够好。
Your solution works, too, but only if there is no library extending the Object
prototype. It may or may not be good enough.
这篇关于Javascript:检查对象是否没有属性,或者映射/关联数组是否为空的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文