ES6 实现私有变量方式总结
需求如下
实现一个Person类,设计下面的类
name : public
age : private
sex : private
1. 使用闭包的方式来实现
const Person = (function() {
let _sex = '';
let _age = 0;
class Person {
constructor(name, age, sex){
this.name = name;
_age = age;
_sex = sex;
}
getName(){
return this.name;
}
getAge(){
return _age;
}
getSex(){
return _sex;
}
}
return Person;
})();
let p1 = new Person('zhangsan', 16, 'MALE');
let p2 = new Person('lisi', 43, 'FEMALE');
console.log(p1.getName(), p1.getAge(), p1.getSex(), p1.name, p1._age, p1._sex); // zhangsan 16 MALE zhangsan undefined undefined
console.log