Преимущества установки свойства «конструктор» в «прототипе»

В наследовании прототипов JavaScript, какова цель добавления свойства prototype.constructor. Позвольте мне объяснить на примере.

var Super = function() {
    this.superProperty = 'Super Property'
}
var Sub = function() {
    this.subProperty = 'Sub Property'
}

Sub.prototype = new Super();
Sub.prototype.constructor = Sub; // advantages of the statement

var inst = new Sub();

Следующие строки всегда возвращают значение true во всех случаях, при добавлении Sub.prototype.constructor = Sub или нет.

console.log(inst instanceof Sub)   // true
console.log(inst instanceof Super) // true

Я думаю, это может быть полезно при получении новых экземпляров, но когда и / или как?

Заранее спасибо.

16
задан Fatih Acet 9 February 2011 в 11:45
поделиться