1.Object.is()
用于判断两个值是否是同一个值。与'=='的区别在于不会强制转换值的类型。与'==='的区别在于判断-0和0、Numer.NaN和NaN的结果不一样。

2.Object.assign()
用于将所有可枚举属性的值从一个或多个源对象分配到目标对象。它将返回目标对象。常见用于深拷贝。

3.Object.prototype.hasOwnProperty()、Object.hasOwn()
hasOwnProperty()方法会返回一个布尔值,指示对象自身属性中是否具有指定的属性(也就是,是否有指定的键)。Object.hasOwn()方法是es13新出用来替代hasOwnProperty()的方法

4.Object.keys()
以数组的形式返回对象所有的key值

5.Object.values()
以数组的形式返回对象所有的value值

6.Object.entries()
将对象的每个key以及其对应的value组成的数组以二维数组的形式的返回

7.Object.fromEntries()
Object.entries()的逆向操作,将键值对列表转换成对象

8.Object.getOwnPropertyDescriptor()
返回指定对象上一个自有属性对应的属性描述符。(自有属性指的是直接赋予该对象的属性,不需要从原型链上进行查找的属性)

9.Object.getOwnPropertyDescriptors()
返回指定对象上所有自有属性对应的属性描述符。(自有属性指的是直接赋予该对象的属性,不需要从原型链上进行查找的属性)

10.Object.defineProperty()
直接在一个对象上定义新的属性或修改现有属性,并返回该对象

11.Object.defineProperties()
直接在一个对象上定义新的属性或修改现有属性,并返回该对象,一次修改多个字段时使用

12.Object.getOwnPropertyNames()
返回一个由指定对象的所有自身属性的属性名(包括不可枚举属性但不包括Symbol值作为名称的属性)组成的数组。

13.Object.getOwnPropertySymbols()
返回一个给定对象自身的所有 Symbol 属性的数组

14.Object.freeze()
冻结一个对象,让其和其原型不能添加新的属性,不能删除已有属性,不能修改该对象已有属性的可枚举性、可配置性、可写性,以及不能修改已有属性的值。不过只能冻结一层,如果有多层,第一层之后不会被冻结

更改对象描述会报错

15.Object.isFrozen()
判断一个对象是否被冻结
