OOP Javascript - ES5
function Person(_name, _age, _height) {
var name = _name;
var age = _age;
var height = _height;
this.initialize = function () {
console.log('Init function');
};
function privateFunc() {
console.log('Private function');
}
this.teste = function () {
privateFunc();
};
this.sayHello = function (name) {
console.log('Hello ' + name);
};
this.hello = function hello(name) {
console.log('Hello ' + name);
};
this.getName = function getName() {
return name;
};
this.setName = function setName(_name) {
name = _name;
};
this.getAge = function () {
return age;
};
this.setAge = function (_age) {
age = _age;
};
this.getHeight = function getHeight() {
return height;
};
this.setHeight = function setHeight(_height) {
height = _height;
};
}
Person.static_method = function () {
console.log('This is my first static method');
};
Person.static_method();
Person.static_attr = 'My first static attribute';
// console.log(Person.static_attr);
Person.prototype.myProtoFunc = function () {
console.log('First prototype function');
};
var jean = new Person('Jean', 48, 1.76);
console.log(jean);
console.log(jean.__proto__);
console.log(Person.prototype);
jean.myProtoFunc();
Person.static_method();
// jean.sayHello(jean.getName());
// jean.teste();