计算js对象的长度

来源:互联网 发布:业务本软件 编辑:程序博客网 时间:2024/05/21 08:51

最近在写javascript项目,这是自夸的说。谦虚点说,就是在修javascript bug。遇到很多问题,同时也解决了很多问题。在处理前后端数据交互的时候,遇到的最多的就是对象处理问题。理所当然的,判断对象是都为空,获取对象长度等问题,是必然会遇到的。而在网上查资料时,这方面的资料也是寥寥无几,现在就将自己关于这类问题的解决办法分享出来。

//使用Object.keys(obj).length来计算对象长度,原理是Object.keys(obj)可以获取obj的索引并组成数组,这样的话,就相当于求数组的长度var obj = {a:1, b:2, c:3};console.log(Object.keys(obj)); //输出是[object Array]: ["a", "b", "c"]//当然,使用上述方法也可以判断对象是否为空,即当Object.keys(obj).length == 0 时,该对象即为空对象。当然也可以用自己自定义的方法来判断。即循环对象obj,如果有索引,即为非空对象,如果没有,则为空对象。function is_obj_empty(obj){    for(var i in obj){        if (i) {            return true;        }    }    return false;}