JS/Jquery判断对象为空的方法
发现了一个巧妙的实现:需要检查一个对象(Object)是否为空,即不包含任何元素。Javascript中的对象就是一个字典,其中包含了一系列的键值对(KeyValuePair)。检查一个对象是否为空,等价于检查对象中有没有键值对。写成代码,形如:
if(isEmptyObject(obj)){
//objisempty
}else{
//notempty
}
至于isEmptyObject的实现,jQuery中有一个很有想法的方式,请看代码:
functionisEmptyObject(obj){
for(varkeyinobj){
returnfalse;
}
returntrue;
}
尽管Javascript没有原生提供isEmpty()方法,但它提供了迭代器,可以用来遍历所有的键值对。于是jQuery所做的事情,就是尝试遍历,如果有任何一个键值对,即说明对象非空,直接返回false。从效率上来说,由于只读取了一个元素,顶多加上一些跳出循环的开销,实际性能不会比原生方法差太多。
functionisNullObj(obj){
for(variinobj){
if(obj.hasOwnProperty(i)){
returnfalse;
}
}
returntrue;
}
以上所述就是本文的全部内容了,希望大家能够喜欢。