lesson_5.js 1000 Bytes
/**
 * Created by vitaliy on 21.09.15.
 * Конструкторы и классы
 */
var Person = function(name){
    this.name = name;
};


Person.prototype.greet = function(){
    return "Hello, my name is " + this.name;
};

var person = new Person("Vitaliy");
console.log(person);


console.log(person.greet());
console.log(person.constructor);
console.log(person instanceof  Person);
console.log(Person.prototype.isPrototypeOf(person));

console.log(Person.prototype);
console.log(person.__proto__);


Developer = function (name, skills){
    Person.apply(this, arguments);
    this.skills = skills || [];
};

Developer.prototype = Object.create(Person.prototype);
console.log(Developer.prototype);
//Developer.prototype.constructor = Developer;
//console.log(Developer.prototype);

developer = new Developer('Maria', ["ruby", "php", "mysql"]);
console.log(developer.skills);
console.log(developer.greet());
console.log(developer instanceof Developer);
console.log(developer instanceof Person);