zoukankan      html  css  js  c++  java
  • js 判断空数组,空对象!

    var attr1 = [ ];
    var obj1 = { };
    console.log(isEmpty(attr1));
    console.log(isEmpty(obj1));
    function isEmpty(obj) {
    if (!obj && obj !== 0 && obj !== '') { // 检验 undefined 和 null
              
    return true;
    }
    if (Array.prototype.isPrototypeOf(obj) && obj.length === 0) {    
    return true;  
    }



    if (Object.prototype.isPrototypeOf(obj) && Object.keys(obj).length === 0) {    
    return true;  
    }  
    return false;
    }
    console.log(JSON.stringify(obj1) === '{}');
    console.log(JSON.stringify(attr1) === '[]');
     

    isPrototypeOf() 方法用于测试一个对象是否存在于另一个对象的原型链上。即判断 Object 是否存在于 obj 的原型链上。需要注意的是,js 中一切皆是对象,也就是说,Object 也存在于数组的原型链上,因此这里数组需要先于对象检验。该方法属于 ES3 标准,现代浏览器均支持,包括 IE.

    Object.keys() 方法会返回一个由给定对象的自身可枚举属性组成的数组,数组中属性名的排列顺序和使用 for...in 循环遍历该对象时返回的顺序一致、

    https://www.tongbiao.xyz/
  • 相关阅读:
    settTimeout vs setInterval
    JS继承
    JS创建对象
    原型链
    开始学习python的感受
    Problem 29
    Python 查看关键字
    Problem 21
    Problem 34
    Problem 42
  • 原文地址:https://www.cnblogs.com/tongbiao/p/8261042.html
Copyright © 2011-2022 走看看