Objekti i nasledjivanje
by Daman Daman
JavaScript
var praviCoveka = function(ime, prezime){
var covek = {
ime: ime,
prezime: prezime,
pozdrav: function(){
return "Zdravo! Moje ime je " + this.ime;
}
};
return covek;
};
var mira = praviCoveka("Mira", "Maric");
var pera = praviCoveka("Pera", "Peric");
console.log(pera.pozdrav());
console.log(mira.pozdrav());
// parazitsko nasledjivanje
var praviRadnika = function(ime, prezime, posao) {
var radnik = praviCoveka(ime, prezime);
radnik.posao = posao;
return radnik;
}
var alija = praviRadnika("Alija", "Sirotanovic", "udarnik");
console.log(alija.pozdrav());
// prototipno nasledjivanje
var covek = {
ime: "Daman",
prezime: "Daman",
pozdrav: function(){
return "Zdravo! Moje ime je " + this.ime;
}
};
var radnik = Object.create(covek);
console.log(radnik.pozdrav());
console.log("Prototip radnika je: ", radnik.__proto__);
console.log("radnik.__proto__ === covek", radnik.__proto__ === covek);
console.log(radnik.__proto__.ime);
// klasno nasledjivanje
var Osoba = function(ime, prezime){
this.ime = ime;
this.prezime = prezime;
}
var Strucnjak = function(ime, prezime, zanimanje){
Osoba.call(this, ime, prezime);
this.zanimanje = zanimanje;
}
var mile = new Strucnjak("Mile", "Dragic", "hirurg");
console.log(mile.ime, mile.zanimanje);