function Box(width, height)
{
this.width = width;
this.height = height;
}
var myBox = new Box(5,5);
从技术上讲,
new
关键字在这里做什么?它是在创建一个新功能吗?还是创建一个新对象并将函数应用到它?如果是这样,那么这是一种创建“盒子”的方法,这是否意味着
this
关键字实际上是指对象 myBox?
function Box(width, height)
{
this.width = width;
this.height = height;
}
var myBox = new Box(5,5);
从技术上讲,new
关键字在这里做什么?它是在创建一个新功能吗?还是创建一个新对象并将函数应用到它?
如果是这样,那么这是一种创建“盒子”的方法,这是否意味着this
关键字实际上是指对象 myBox?
它正在创建一个新对象,Box
用作其构造函数。this
在这种情况下(当使用关键字调用函数时)的值new
是正在构造的新实例。这个新对象将继承自定义的任何内容Box.prototype
(默认为Object.prototype
)。
我说在这种情况下,因为在 JavaScript 中,值this
是由函数的调用方式决定的。我建议阅读MDN 页面以this
获取更多信息。
注意:如果这个问题应该被关闭,它应该是重复的。以下是一些可能对您也有帮助的重复链接: