new Object() 和Object.create(null)
const obj1 = {
a : 10,
b : 20
};
const obj2 = {
a : 10,
b : 20
};
//obj1 === obj2 =>>> false 引用类型 因为内存地址不同
const obj3 = new Object(obj1);
// obj3 === obj1 =>>> true 指向同一内存地址
const obj4 = new Object({
a : 10,
b : 20
})
// obj4 === obj1 =>>> false obj4的声明方式相当于obj2的声明方式
const obj5 = Object.create({
a:10,
b:20
})
//通过console会发现 obj5的隐式原型(__proto__)是{a:10,b:20} Object.create 中传的对象是对原型进行赋值
const obj6 = Object.create(obj1)
//通过console会发现 obj6的隐式原型(__proto__)是和obj1相等的 相当于继承了obj1