一、Object.keys,Object.value,Object.entries
Object.keys 返回一个数组,成员是参数对象自身的(不含继承的)所有可遍历(enumerable)属性的键名
var obj = { foo: 'bar', baz: 42 };
Object.keys(obj)
判断对象是否为空
其一:
const obj = {}
const obj1 = {
name: '夜雨声烦',
age: 18
}
console.log(Object.keys(obj).length)
if (!Object.keys(obj).length) {
}
console.log(Object.keys(obj1).length)
if (Object.keys(obj1).length) {
}
其二:
因为:
console.log(obj)
console.log(obj === {})
console.log(obj == {})
console.log(obj === '{}')
console.log(obj == '{}')
可以使用JSON.stringify方法
console.log(JSON.stringify(obj) == '{}')
console.log(JSON.stringify(obj) === '{}')
Object.values方法返回一个数组,成员是参数对象自身的(不含继承的)所有可遍历(enumerable)属性的键值
const obj = { 100: 'a', 2: 'b', 7: 'c' };
Object.values(obj)
二、场景
判断数组对象中某个对象的某个属性是否重复
其一:利用set去重,判断其长度减少,若减少说明有重复的
let ids= specList.map(item => item.id);
let idSet = new Set(names);
if (nameSet.size == names.length) {
console.log("无重复");
} else {
console.log("有重复")
}