Untitled
unknown
plain_text
4 years ago
1.7 kB
7
Indexable
/*
Pattern-ul utilizat: Prototype
Spre exemplu avem un loc care are proprietățile și metodele sale. Noi vrem să adăugăm câteva noi metode și anume (getName(), getId(), getDescription(), getAddress(), getPhone())
Cea mai bună metodă e să folosim pattern-ul prototype, care ne permite foarte ușor să facem acest lucru.
*/
function Place(id, name, description, address, phone){
this.id = id;
this.name = name;
this.description = description;
this.address = address;
this.phone = phone;
this.getPlace = () => {
return {
id: this.id,
name: this.name,
description: this.description,
address: this.address,
phone: this.phone
}
}
}
// În JS asta deja este impelementat
Place.prototype.getName = function() {
return this.name;
}
Place.prototype.getId = function() {
return this.id;
}
Place.prototype.getDescription = function() {
return this.description;
}
Place.prototype.getAddress = function() {
return this.address;
}
Place.prototype.getPhone = function() {
return this.phone;
}
var place1 = new Place(1, 'first place', 'first description', 'first address', '+373 670 23 199')
var place2 = new Place(2, 'seccond place', 'seccond description', 'seccond address', '+373 670 73 736')
var place3 = new Place(3, 'third place', 'third description', 'third address', '+373 670 94 777')
console.log(place1.getId());
console.log(place1.getName());
console.log('--------------');
console.log(place2.getName());
console.log(place2.getPhone());
console.log('--------------');
console.log(place3.getId());
console.log(place3.getDescription());Editor is loading...