您现在的位置: 万盛学电脑网 >> 程序编程 >> 脚本专题 >> javascript >> 正文

JS/Jquery判断对象为空的方法

作者:佚名    责任编辑:admin    更新时间:2022-06-22

 发现了一个巧妙的实现: 需要检查一个对象(Object)是否为空,即不包含任何元素。Javascript 中的对象就是一个字典,其中包含了一系列的键值对(Key Value Pair)。检查一个对象是否为空,等价于检查对象中有没有键值对。写成代码,形如:

1 2 3 4 5 6 if (isEmptyObject(obj)) {   // obj is empty } else { // not empty }

至于 isEmptyObject 的实现,jQuery 中有一个很有想法的方式,请看代码:

1 2 3 4 5 6 function isEmptyObject(obj) { for (var key in obj) { return false; } return true; }

尽管 Javascript 没有原生提供 isEmpty() 方法,但它提供了迭代器,可以用来遍历所有的键值对。于是 jQuery 所做的事情,就是尝试遍历,如果有任何一个键值对,即说明对象非空,直接返回 false。从效率上来说,由于只读取了一个元素,顶多加上一些跳出循环的开销,实际性能不会比原生方法差太多。

1 2 3 4 5 6 7 8 function isNullObj(obj){ for(var i in obj){ if(obj.hasOwnProperty(i)){ return false; } } return true; }