跳转到主内容
websoft网络软件专家 - 深耕网络技术,打造实用软件!

JavaScript 中“new”关键字的作用是什么?

让我们深入探讨JavaScript中的
new
关键字。它使构造函数能够创建新的对象实例,但这背后究竟发生了什么? 首先,
new
运算符创建一个空对象。想象一下,一个等待填充属性和方法的空白画布。 其次,这个空对象与构造函数的原型对象关联。这就好比建立了一个继承关系,新对象知道了它的“祖先”。
obj.__proto__ = constructorfunction.prototype;
然后,
new
运算符将这个新对象作为
this
上下文传递给构造函数。在构造函数内部,您可以使用
this
来添加属性和方法,就像为这个新对象添加功能一样。 立即学习 “ Java免费学习笔记(深入) ”;
constructorfunction.call(obj);
最后,
new
运算符检查构造函数是否返回一个对象。如果没有,它会返回之前创建的新对象;如果有,则返回构造函数返回的对象。 来看一个例子:
function Animal(type) { this.type = type; } const cat = new Animal('cat'); console.log(cat.type); // cat
如果没有
new
关键字,上述步骤将不会执行,
this
将指向全局对象(在浏览器环境中是
window
),导致原型链断裂以及其他错误。因此,
new
关键字是创建对象实例的关键,确保一切按预期进行。

相关文章