精华内容
下载资源
问答
  • javascript判断空对象

    千次阅读 2018-09-27 17:56:26
    便于查找,特此记录,利己利人。 简单来说,总共有四种方法: ...返回值:true (如果对象obj不为空对象,返回false) 方法二:jquery的方法$.isEmptyObject var obj = {} $.isEmptyObject(obj) 返回...

    便于查找,特此记录,利己利人。

    简单来说,总共有四种方法:

    方法一:JSON.Stringify

    var obj = {}

    JSON.Stringify(obj) === '{}'

    返回值:true (如果对象obj不为空对象,返回false)

    方法二:jquery的方法$.isEmptyObject

    var obj = {}

    $.isEmptyObject(obj)

    返回值:true (如果对象obj不为空对象,返回false)

    方法三:ES6的方法Object.getOwnPropertyNames

    var obj = {}

    Object.getOwnPropertyNames(obj) 

    返回值:obj对象自身属性对应的字符串数组。(我们可以通过判断这个数组长度,为0 则为空数组)

    方法四:ES6的方法Object.keys

    var obj = {}

    Object.keys(obj)

    返回值:obj对象所有可枚举属性的字符串数组 (最后同样判断数组长度是否为0)

    后面两个方法的差距就是,getOwnPropertyNames返回的属性字符串包括了不可枚举,而Object.keys()只返回可枚举的属性字符串数组。如果我们没有显示的定义属性是否可枚举,那么创建的属性默认是可枚举的,所以这样,两者返回的结果是一样的。

     

     

    展开全文
  • Javascript判断空对象

    2015-09-17 18:22:00
    最近在项目开发中判断空对象时,用了“!”运算符,结果程序出现bug,找了好久才找到原因。 其实自己范了一些低级错误,现在把自己经验总结一下: 在JavaScript中,任意JavaScript的值都可以转换为布尔值。 下面...

    最近在项目开发中判断空对象时,用了“!”运算符,结果程序出现bug,找了好久才找到原因。

    其实自己范了一些低级错误,现在把自己经验总结一下:

    在JavaScript中,任意JavaScript的值都可以转换为布尔值。

    下面这些值会被转换成false:

    undefined、null、0、-0、NaN、“”(空字符串)。

    NaN--表示非数字值。无穷大除以无穷大、给任意负数作开方运算或者算术运算符与不是数字或无法转换为数字的操作数一起使用时都将返回NaN。

    判断一个值是否为NaN方法:1、x!=x返回true;2、函数isNaN()。因为NaN和任何值都不相等,包括它自身。

    正零和负零相等,如:0===-0返回true。

     

    JavaScript预定义了全局变量Infinity和NaN,用来表示正无穷大和非数字值。

    所有其他值,包括所有对象/数组都会转换成true。

    转载于:https://www.cnblogs.com/myboke/p/4817299.html

    展开全文
  • 使用javascript判断对象是否是空对象
    一、判断一下对象是否是空对象
        let obj1 = {
            name:"GG",
            say:function () {
                console.log("hahaha");
            }
        };
        let obj2 = {};
    
    二、判断方法
    方法一:将对象转换为字符串
        let str1 = JSON.stringify(obj1);//注意:属性会被转换,方法不会
        let str2 = JSON.stringify(obj2);
        console.log(str1, str2);//返回:{"name":"GG"} {}
        console.log(str1 === "{}");//返回:true
    
    方法二:使用getOwnPropertyNames:获取指定对象所有属性
        let keys1 = Object.getOwnPropertyNames(obj1);//属性和方法都可以拿到
        let keys2 = Object.getOwnPropertyNames(obj2);
        console.log(keys1, keys2);
         console.log(keys2.length === 0);//true
    

    打印结果

    方式三:使用keys,结果同getOwnPropertyNames
        let value1 = Object.keys(obj1);
        let value2 = Object.keys(obj2);
        console.log(value1, value2);//返回结果同getOwnPropertyNames方法
        console.log(value2.length === 0);//true
    
    三、封装写法
        function isEmptyObj(obj){
           //返回true即为空对象
           return Object.getOwnPropertyNames(obj).length === 0;
       }
    
    展开全文
  • JavaScript判断变量是否为空对象或空数组

    1. 判断一个变量是对象还是数组

    首先判断一个变量是对象还是数组,不能使用typeof来判断,因为不管是对象还是数组,使用typeof得到的都是"object"
    可以使用Object.prototype.toString.call()方法。

      function isObjOrArr(obj) {
        if (Object.prototype.toString.call(obj) === '[object Array]') {
          console.log('obj是数组');
          // other code
        } else if (Object.prototype.toString.call(obj) === '[object Object]') {
          console.log('obj是对象');
          // other code
        } else {
          console.log('obj不是数组也不是对象');
          // other code
        }
      }
    

    2. 判断一个对象是否是空对象

    2.1 可以通过 JSON.stringify()方法判断

    将对象转化为json字符串,再判断该字符串是否为"{}"即可。

      function isEmpty(obj) {
        if (JSON.stringify(obj) === '{}') {
          console.log('对象为空!');
        } else {
          console.log('对象不为空!');
        }
      }
    
    2.2 使用ES6的方法Object.keys()方法结合length属性进行判断

    Object.keys(obj)返回一个数组,包括对象自身的(不含继承的)所有可枚举属性(不含 Symbol 属性)的键名。

    function isEmpty(obj) {
      if (Object.keys(obj).length === 0) {
        console.log('对象为空!');
      } else {
        console.log('对象不为空!');
      }
    }
    

    3. 判断数组是否为空

    可以通过length属性直接返回数组中的元素个数,若为零,则表示数组为空。

    展开全文
  • 主要介绍了Javascript判断对象是否为,本文利用Javascript 中的对象就是一个字典的特性,检查对象中有没有键值对实现判断对象是否为,需要的朋友可以参考下
  • for in 循环判断 var obj = {}; var result = function() { for(var key in obj) { ...将json对象转化为json字符串,再判断该字符串是否为"{}" var data = {}; var result = (JSON.stringify(data) == "{}"); ...
  • 当后台给我们返回值时,可能会返回的值是空的,此时必须对空对象进行条件判断,此时判断对象是否为空共有3中办法,具体如下: 1.使用es6的新方法,Object.keys(obj).length 的方法,使用Object.keys(obj)方法返回一...
  • 第一种jQuery 中的 isEmptyObject() 实现方法function isEmptyObject(e) { var t; for (t in e) return !1; return !0 }console.log(isEmptyObject()); //true console.log(isE
  • 下面小编就为大家带来一篇JavaScript 判断一个对象{}是否为空对象的简单方法。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
  • JavaScript判断对象是否为原生JS判断1.JSON.stringify()2.Object.getOwnPropertyNames()3.Object.keys()其他 原生JS判断 非jquery api。部分方法使用到ES6中的API 1.JSON.stringify() 将{}转成字符串类型,然后...
  • 下面小编就为大家带来一篇JavaScript 判断一个对象{}是否为空对象的简单方法。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧做项目时遇到一个问题,判断一个对象是否为空对象,...
  • //没有检测继承属性 function isEmptyObj(obj){ for(var i in obj){ if(i){ return false; } } return true; } var a = {name:"aa"}; function p(){} p.prototype.name = "aa"; c
  •  下面的方法是判断对象是否为的方法,包括对 null、undefind、字符等类型。 //判断是否为返回 false 不为返回true function isNotEmpty(_value) { return ((_value === undefined || _va...
  • 问题: vartemp=Request.QueryString("id"); if(temp!=null) chooseId=temp; else chooseId=1; temp的类型返回是object,当temp取不到值时,这里的 ...直接将temp作为if的判断条件即可,空对象会转换为fals...
  • Javascript 中的对象就是一个字典,其中包含了一系列的键值对(Key Value Pair)。检查一个对象是否为,等价于检查对象中有没有键值对。写成代码,形如: if(isEmptyObject(obj)){ // obj is empty }else{ ...
  • JavaScript 的基本类型(number, string, boolean, null, undefined, symbol)在变量中存储的是值本身。两个基本类型在进行比较时,会比较值 let apple = 1; // 变量 apple 中存放的就是 1 let banana = 1; apple === ...
  • 这是最常见的方法,如果为真则“不是空对象”,否则是空对象 function isEmptyObj(data) { for(var item in data) { return false; } return true; }; var obj = {}; if (isEmptyObj(obj)){ console.log(“对象为空...
  • {}就是一个空对象,由于没有任何属性和方法,所以可以利用这一特点进行区别:12345678function isEmpty (object) { for (var i in object) { // 存在属性或方法,则不是空对象 reutrn false; } return true;}代码...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 573
精华内容 229
关键字:

javascript判断空对象

java 订阅