js对象的一些方法
Object.assign
通过复制一个或多个对象来并返回一个新对象
const src = { a: 1, b: 2 };
const src1 = { b: 3, c: 4 };
console.log(Object.assign(src, src1));
Object.create
生成一个新对象这个对象是__proto__继承的
const src = {
var: "12315646"
};
console.log(Object.create(src));

Object.defineProperty()
可以修改或增加一个属性
var obj = {};
Object.defineProperty(obj, 'src', {
value: 42,
});
console.log(obj.src);
Object.defineProperties()
可以修改或增加多个属性
var obj = {};
Object.defineProperties(obj, {
'src': {
value: 'Hello',
},
'src2': {
value: 'Hello1',
}
// etc. etc.
});
console.log(obj)//{src: 'Hello', src2: 'Hello1'}
Object.entries()
遍历对象
const object1 = {
val1:"阿撒大大飒飒大师大",
val2:"哈哈哈哈哈哈或好",
};
for (const [index, item] of Object.entries(object1)) {
console.log(index, item)
}
Object.freeze()
冻结属性
const obj = {
val: 42
}
Object.freeze(obj)
obj.val = 123
console.log(obj)
Object.is()
判断传入的是否相等
var src = {
a: 1
}
var src1 = {
a: 2
}
console.log(Object.is("123", "123"));//true
Object.isExtensible()
判断对象是否可拓展
var src = {};
console.log(Object.isExtensible(src));//true
Object.isFrozen()
判断对象是否冻结
var src = {};
console.log(Object.isFrozen(src));//false
Object.isSealed()
判断对象是否已经密封
var empty = {};
console.log(Object.isSealed(empty))
Object.keys()
遍历字符串数组
var arr = ['a', 'b', 'c'];
console.log(Object.keys(arr)); // ['0', '1', '2']
Object.values()
var obj = { src: 'val', src: 123 };
console.log(Object.values(obj));