以下是JS实现判断对象是否为空对象的5种方法的完整攻略:
方法一:for...in方法
使用for...in遍查对象中是否有属性,如果有则返回false,没有则返回true。
代码示例:
function isEmptyObject(obj) {
for(var key in obj) {
return false;
}
return true;
}
console.log(isEmptyObject({})); // true
console.log(isEmptyObject({name: "Tom"})); // false
方法二:Object.keys方法
使用Object.keys返回对象自身所有可枚举属性的键组成的数组,如果返回空数组则说明对象为空。
代码示例:
function isEmptyObject(obj) {
return Object.keys(obj).length === 0;
}
console.log(isEmptyObject({})); // true
console.log(isEmptyObject({name: "Tom"})); // false
方法三:JSON.stringify方法
通过将对象序列化成JSON字符串,如果返回空字符串则说明对象为空。
代码示例:
function isEmptyObject(obj) {
return Object.getOwnPropertyNames(obj).length === 0;
}
console.log(isEmptyObject({})); // true
console.log(isEmptyObject({name: "Tom"})); // false
方法四:underscore/lodash库
underscore/lodash库提供了_.isEmpty方法,可以直接判断是否为空对象。
代码示例:
console.log(_.isEmpty({})); // true
console.log(_.isEmpty({name: "Tom"})); // false
方法五:ES6新特性
ES6新特性提供了Object.values方法,返回对象属性值组成的数组,如果返回空数组则说明对象为空。
代码示例:
function isEmptyObject(obj) {
return Object.values(obj).length === 0;
}
console.log(isEmptyObject({})); // true
console.log(isEmptyObject({name: "Tom"})); // false
以上就是JS实现判断对象是否为空对象的5种方法的完整攻略。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:JS实现判断对象是否为空对象的5种方法 - Python技术站