OOP JavaScript
by Ivan Gerasimenko
JavaScript
var User = function(name, age) {
this.name = name;
this.age = age;
};
User.get = function() {
console.log('get user');
return new User('Peter', 26);
};
User.prototype.rename = function(newName) {
this.name = newName;
};
var ivan = new User('Ivan', 28);
console.log('ivan.age: ' + ivan.age);
console.log('ivan.name: ' + ivan.name);
console.log("ivan.rename('iivan');");
ivan.rename('iivan');
console.log('ivan.name: ' + ivan.name);
var user = User.get(); // has method
console.log(user);
// console.log('ivan.get(); --> ' + ivan.get()); // --> nomethod
// User.rename(); // --> there is no method
var Document = function(id, type, name) {
this.id = id;
this.type = type;
this.name= name;
};
var doc1 = new Document(1, 'Memorandum', 'Xxxxxxxxxxx1');
console.log('doc1 id: ' + doc1.id);
console.log('doc1 name: ' + doc1.name);
Document.prototype.rename = function(newname) {
this.name = newname;
};
doc1.rename('Yyyyyyyyyyy1');
console.log('doc1 name: ' + doc1.name);