FITURE

If you can fight, fight.

首页 >> 分享>>Javascript>>记JavaScript中的私有变量和私有方法

记JavaScript中的私有变量和私有方法

Posted by fiture / 2012年04月25日 / Javascript

本人的JavaScript水平是很菜那种水平,然后最近在看某些JavaScript库的源代码,期间看到了很多的类似两个下划线开头的变量,百思不得其解,然后在菩提树下的杨过上面找到了相关信息,对就是JavaScript中的私有变量。

先来看相关JavaScript代码:

      var Person = function(name) {
        var __Name; // 定义私有变量,定义私有变量时一般约定规则是在之前加两个下划线
        var privateMethod = function() {
          return 0;
        } //  定义私有方法

        this.setName = function(){
          __Name = name;  
        }
        this.getName = function(){
          this.setName();
          return __Name;
        }  
        console.log(privateMethod()); //内部可以调用,结果为:0
      }

      var person = new Person('FITURE');
      console.log(person.getName());  // 私有变量只能内部调用,结果为:FITURE
      console.log(person.__Name); //结果为:undefined
      console.log(typeof person.privateMethod); //结果为:undefined

JavaScript中的私有变量

原来JavaScript中还是有私有变量的,简单的可以理解为:在构造函数中用var关键字定义的变量就是私有变量,私有变量只能在构造函数内部调用。至于那两个下划线只是一般约定规则而已,就像引用类型的第一个字母一般大写而已。

JavaScript中的私有方法

和私有变量类似,私有方法就是直接在构造函数内部定义的function,外部不能调用。

5条回应:“记JavaScript中的私有变量和私有方法”

  1. 刘印博客说道:

    哈哈,我看不懂呢。

  2. huangjun说道:

    对于js,我是拿来主义。

  3. Heroic说道:

    测试评论。

  4. Heroic说道:

    Test another comments.

huangjun进行回复 取消回复

电子邮件地址不会被公开。 必填项已用*标注