欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Symbol 实现属性私有化的方式

程序员文章站 2022-04-02 23:52:10
//一般通过私有变量来保存私有属性 通过原型方法(getSex)来访问该属性 实现该属性只能被访问无法直接改变属性值 const Person = (function(){ let _sex = "" function P(name,sex){ this.name = name _sex = sex ......
  • //一般通过私有变量来保存私有属性 通过原型方法(getsex)来访问该属性   实现该属性只能被访问无法直接改变属性值
    const person = (function(){ let _sex = "" function p(name,sex){ this.name = name _sex = sex } p.prototype.getsex = function(){ return _sex } return p }()) let p1 = new person('张三','男') console.log(p1.getsex()) //使用symbol来实现属性的私有化----ps(感觉上面的方式更好理解啊) const person = (function(){ let _sex = symbol('sex') function p(name,sex){ this.name = name this[_sex] = sex } p.prototype.say = function(){ return this[_sex] } return p }()) let p1 = new person('张三','男') console.log(p1) console.log(p1.say())