封装

作者: 倾国倾城的小饼干 | 来源:发表于2018-04-04 15:37 被阅读0次

    求和的调用者只需传参调用就行了,但是设计人员的工作很复杂。
    静态成员:

    function person(name,age){
      this.name=name;
    }
    person.useTools=true//person也是对象可加属性useTools
    调用person.useTools
    
    function person(name){
      var age=100;
      function pm(){
        console.log('personal method')//私有的,外部访问不到
    }
    this.name=name;
    this.test=function(){}//公有的,外部可以调用。
    }
    
    function person(name){
      var age=100;
      function pm(){console.log(this.name)}//输不出来,因为调用的是window
      this.name=pname;
      this.test=function(){}
      pm();
    }
    

    解决方法一:

    function person(pname){
      var age=100;
      function pm(){
        console.log(this.name)
    }
      this.name=pname;
      this.test=function(){
        console.log('public method')
        pm.call(this)
    }
    }
    

    解决方法二:

    function person(name){
      function pm(){console.log(self.name)}
      var self={
        name:pname;
        test:function(){pm()}
    }
      return self;
    }
    var p2=person('cj')
    p2.test()
    

    相关文章

      网友评论

          本文标题:封装

          本文链接:https://www.haomeiwen.com/subject/ajnhhftx.html