• javascript对象属性为空的判断


    zepto:

    $.isEmptyObject = function(obj) {
        var name
        for (name in obj) return false
        return true
      }
    $.isEmptyObject({})//true


    /*
     * 检测对象是否是空对象(不包含任何可读属性)。
     * 方法既检测对象本身的属性,也检测从原型继承的属性(因此没有使hasOwnProperty)。
     */
    function isEmpty(obj)
    {
        for (var name in obj)
        {
            return false;
        }
        return true;
    };

     这里所说的空对象,到底是 {} 还是 null . 我写了一个测试用例。

    var a = {};
    a.name = 'realwall';
    console.log(isEmpty(a));  //false
    console.log(isEmpty({}));  //true
    console.log(isEmpty(null));  //true
    //注意参数为null时无语法错误哦,即虽然不能对null空指针对象添加属性,但可以使用for in 语句。

      

    /*
     * 检测对象是否是空对象(不包含任何可读属性)。
     * 方法只既检测对象本身的属性,不检测从原型继承的属性。
     */
    function isOwnEmpty(obj)
    {
        for(var name in obj)
        {
            if(obj.hasOwnProperty(name))
            {
                return false;
            }
        }
        return true;
    };
  • 相关阅读:
    Debian 系统的ftp服务器安装配置
    一个程序员送给大学生弟弟的那些话
    javaWeb——Servlet(一)
    javaWeb——JSP(一)
    C语言中 lseek函数的使用规范
    ConcurrentHashMap原理
    线程池的原理
    zookeeper 是什么?zookeeper 都有哪些功能?
    RabbitMQ(转)
    数据库分库分表
  • 原文地址:https://www.cnblogs.com/darr/p/5460888.html
Copyright © 2020-2023  润新知