基本數據類型:Number、String、Boolean、Null、Undefined、Object、Symbol
Symbol:作用:屬性私有化,保護數據
Symbol類型的值通過symbol函數生成,相同Symbol函數返回的值是惟一的
Symbol('aa') != Symbol('aa')
例子如下:
/* Symbol 實現 屬性私有化 */
let Person = (function () {
let _gender = Symbol('gender');
function P(name,gender) {
this.name = name;
this[_gender] = gender;
}
P.prototype.getGender = function() {
return this[_gender];
}
return P;
})();
let p = new Person('小明','女');
console.log(p);
/* 變量實現 */
let Person1 = (function() {
let _gender = '';
function P(name,gender) {
this.name = name;
_gender = gender;
}
P.prototype.getGender = function() {
return _gender;
}
return P;
})();
let p1 = new Person1('小紅','男');
console.log(p1);