Javascript Vererbung: Aufruf des super-Konstruktors verwendet wird, oder mit Prototypen-Kette?

Ganz vor kurzem Las ich über die JavaScript-Aufruf Nutzung in MDC

https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Function/call

eine linke der unten angegebenen Beispiel, ich verstehe immer noch nicht.

Warum sind Sie mit der Vererbung hier wie diese

Prod_dept.prototype = new Product();

ist das notwendig? Denn es ist ein Aufruf an den super-Konstruktor in

Prod_dept()

sowieso, wie diese

Product.call

ist diese nur aus gängigen Verhalten? Wann ist es besser, zu nennen, für den super-Konstruktor, oder verwenden Sie die Prototyp-Kette?

function Product(name, value){
  this.name = name;
  if(value >= 1000)
    this.value = 999;
  else
    this.value = value;
}

function Prod_dept(name, value, dept){
  this.dept = dept;
  Product.call(this, name, value);
}

Prod_dept.prototype = new Product();

//since 5 is less than 1000, value is set
cheese = new Prod_dept("feta", 5, "food");

//since 5000 is above 1000, value will be 999
car = new Prod_dept("honda", 5000, "auto");

Danke für die Dinge klarer

InformationsquelleAutor der Frage Jeremy S. | 2010-11-11

Schreibe einen Kommentar