这与javascript中的调用之间的关系

时间:2017-05-08 15:52:38

标签: javascript object this

我正在努力了解"这个"当使用call作为构造函数链时,它可以工作。

来自MDN的以下片段:

function Product(name, price) {
  this.name = name;
  this.price = price;
}

function Food(name, price) {
  Product.call(this, name, price);
  this.category = 'food';
}
var cheese = new Food('feta', 5);

不应该是声明

Product.call(this, name, price);

this = Product.call(this, name, price);

(编辑:我知道&#34;这个&#34;只读,我只想说明在我的脑海里应该有一个分配操作&#34;这个&#34; of Food()。)< / p>

据我所知,使用new at:

var cheese = new Food('feta', 5);

创建一个新的空对象,指向&#34;这个&#34;在执行Food()函数期间。

然后我们使用&#34; this&#34;来调用Product()函数。宾语。 Product()将返回修改后的此对象,但它不会保存在Food()

中的任何位置

那么&#34;这&#34;在食物()正在更新与返回&#34;这&#34;来自Product()

0 个答案:

没有答案