JS判断对象是否为空对象的几种实用方法汇总

 更新时间:2022年05月20日 11:00:16   作者:jrue  
判断是否为空对象在实际开发中很常见,下面这篇文章主要给大家介绍了关于JS判断对象是否为空对象的几种实用方法,文中通过实例代码介绍的非常详细,需要的朋友可以参考下

1.通过JSON自带的stringify()方法来判断

function isEmptyObj(obj) {
    return JSON.stringify(obj) === '{}'
}
console.log('对象是否为空:', isEmptyObj({}))

2.for in 循环判断

function isEmptyObj(obj) {
    for(let item in obj) {
        return true
    }
    return false
}    
console.log('对象是否为空:', isEmptyObj({}))

3.使用ES6的Object.keys()方法

function isEmptyObj(obj) {
    return Object.keys(obj).length === 0
}
console.log('对象是否为空:', isEmptyObj({}))

4.Object.getOwnPropertyNames()方法

function isEmptyObj(obj) {
    return Object.getOwnPropertyNames(obj).length === 0
} 
console.log('对象是否为空:', isEmptyObj({}))

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

var data = {};
var b = (JSON.stringify(data) == "{}");
alert(b);   //true 为空, false 不为空

 JSON.stringify()扩展

JSON.stringify() 方法用于将 JavaScript 值转换为 JSON 字符串。
语法:

JSON.stringify(value[, replacer[, space]])

参数说明:

  • value:必需,要转换的 JavaScript 值(通常为对象或数组)。
  • replacer: 可选。用于转换结果的函数或数组。 如果 replacer 为函数,则 JSON.stringify 将调用该函数,并传入每个成员的键和值。使用返回值而不是原始值。 如果此函数返回 undefined,则排除成员。根对象的键是一个空字符串:""。如果 replacer 是一个数组,则仅转换该数组中具有键值的成员。成员的转换顺序与键在数组中的顺序一样。
  • space:可选,文本添加缩进、空格和换行符,如果 space 是一个数字,则返回值文本在每个级别缩进指定数目的空格,如果 space 大于 10,则文本缩进 10 个空格。space 也可以使用非数字,如:\t。
  • 返回值:返回包含 JSON 文本的字符串。

总结

到此这篇关于JS判断对象是否为空对象的几种实用方法的文章就介绍到这了,更多相关JS判断是否为空对象内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • JS原型、原型链深入理解

    JS原型、原型链深入理解

    这篇文章主要针对javascript中的原型、原型链深入理解,原型是JavaScript中一个比较难理解的概念,本文为大家解决这个难题,感兴趣的小伙伴们可以参考一下
    2016-02-02
  • javascript parseInt() 函数的进制转换注意细节

    javascript parseInt() 函数的进制转换注意细节

    parseInt(string, radix) 有2个参数,第一个string 是传入的数值,第二个radix是 传入数值的进制,参数radix 可以忽略,默认为 10,各种进制的数转换为 十进制整数,接下来详细介绍,感兴趣的朋友可以了解下哦
    2013-01-01
  • javascript基于牛顿迭代法实现求浮点数的平方根【递归原理】

    javascript基于牛顿迭代法实现求浮点数的平方根【递归原理】

    这篇文章主要介绍了javascript基于牛顿迭代法实现求浮点数的平方根,简单说明了牛顿迭代法的原理,并结合实例分析了javascript基于递归的数值运算相关操作技巧,需要的朋友可以参考下
    2017-09-09
  • JavaScript中的await/async的作用和用法

    JavaScript中的await/async的作用和用法

    await/async 是 ES7 最重要特性之一,它是目前为止 JS 最佳的异步解决方案了。这篇文章主要介绍了JavaScript中的await/async的作用和用法的相关资料
    2016-10-10
  • 利用Ext Js生成动态树实例代码

    利用Ext Js生成动态树实例代码

    今天在公司帮同事写了个用Ext Js生成动态树的Demo,在这里分享一下,也好供以后自己查阅。
    2008-09-09
  • js定时器不准确问题的解决方法

    js定时器不准确问题的解决方法

    本文主要介绍了js定时器不准确问题的解决方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-06-06
  • JavaScript中原始值和引用值深入讲解

    JavaScript中原始值和引用值深入讲解

    原始值代表原始数据类型的值,也叫基本数据类型,包括 Number、Stirng、Boolean、Null、Underfined,下面这篇文章主要给大家介绍了关于JavaScript中原始值和引用值深入讲解的相关资料,需要的朋友可以参考下
    2022-10-10
  • 浅说js变量

    浅说js变量

    JavaScript 是弱类型, 变量可存储任意类型, 并且运行期间类型可变
    2011-05-05
  • Js利用Canvas实现图片压缩功能

    Js利用Canvas实现图片压缩功能

    下面小编就为大家带来一篇Js利用Canvas实现图片压缩功能。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-09-09
  • 微信小程序实现时间轴

    微信小程序实现时间轴

    这篇文章主要为大家详细介绍了微信小程序实现时间轴,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-05-05

最新评论