OOP inheritance
by Artem
JavaScript
'use strict';
let Employee = function() {
let id = Math.random();
return function() {
let Employee = {
constructor(name) {
this.name = name;
this.id = id;
return this;
},
sayHi() {
console.log('Hello, my name is ', this.name);
}
};
return Employee;
};
};
let e1 = Object.create(Employee()()).constructor('Artem');
console.log(e1);
let e2 = Object.create(Employee()()).constructor('Max');
console.log(e2);