-
new关键字的作用是什么?
new关键字的作用是创建一个对象实例。它允许我们通过调用构造函数来实例化一个类,并返回一个新的对象。 -
使用new关键字创建对象时,发生了哪些步骤?
- 创建一个新的空对象。
- 将新对象的原型链链接到构造函数的原型对象上。
- 将构造函数的作用域赋值给新对象,以便在构造函数中可以使用
this引用新对象。 - 执行构造函数的代码块,为新对象设置属性和方法。
- 如果构造函数显式返回一个对象,则返回该对象;否则,默认返回新对象。
-
let obj = Object.create(null) 和 let obj2 ={}有什么区别?
前者没有原型链,后者有;应用场景上,如果只需要存值,不需要调原型链上的方法,执行效率会更高,后者在用for...in 取值时会遍历原型链上的方法,效率更低 -
是否可以创建一个没有构造函数的对象?如果可以,使用new关键字会发生什么?
是的,可以创建一个没有构造函数的对象。在这种情况下,使用new关键字仍然会创建一个新的对象,并将其原型链链接到Object.prototype上。