判断对象是否是空对象:
for...in循环判断:var obj = {}; var result = function() { for(var key in obj) { return false; } return true; }- ES6 的
Object.keys()方法:var data = {}; var arr = Object.keys(data); alert(arr.length == 0);//true Object.getOwnPropertyNames()方法:var data = {}; var arr = Object.getOwnPropertyNames(data); alert(arr.length == 0);- 将 json 对象转化为 json 字符串,再判断该字符串是否为
{}:var data = {}; var result = (JSON.stringify(data) == "{}");
判断对象是否有某个属性:
- 使用 in 关键字,该方法可以判断对象的自有属性和继承来的属性是否存在。
const obj = {name: 'Lee’} if ('name' in obj) { return true } - 使用对象的
hasOwnProperty()方法,该方法只能判断自有属性是否存在,对于继承属性会返回 false。const obj = {name: 'Lee’} if (obj.hasOwnProperty('name')) { return true }
判断两个对象是否相等:
- 把两个对象转成字符串进行对比,只适用于键值顺序都完全对应的对象。
JSON.stringify(object1) === JSON.stringify(object2) Object.entries()方法,只适用于键值顺序都完全对应的对象。Object.entries(object1).toString() === Object.entries(object2).toString()
本文介绍JavaScript中对象的操作方法,包括如何判断是否为对象、检查对象是否为空、验证对象属性存在与否及比较两个对象是否相等。提供了多种实现方式,如使用for...in循环、Object.keys()方法、JSON.stringify()等。
2173

被折叠的 条评论
为什么被折叠?



