Poniższy kod jest prawie identyczny z kodem z doskonałej książki Douglasa Crockforda JavaScript: The Good Parts, ze strony 29-30. Jedyną różnicą jest to, że dodaje właściwość get_status tak:Kod Crockforda dotyczący wzorca wywoływania konstruktora
Quo.prototype.get_status=function() {
this.status=string;
}
Moje pytanie brzmi, dlaczego jego kod działa OK, ale moja mała zmiana, poniżej wyniki w błędzie myQuo ma metodę get_status?
<script>
var Quo=function(string) {
this.status=string;
}
Quo.get_status=function() {
return this.status;
}
var myQuo=new Quo("confused");
alert(myQuo.get_status());
</script>
Pytanie to _why_ get_status nie jest dodawane do myQuo. Wiem już, że dodałem go do Quo, a nie do jego prototypu. –
Instancje nie dziedziczą właściwości ani metod ich konstruktorów - dziedziczone są tylko właściwości i metody dołączone do prototypu. – nrabinowitz