归墟
业精于勤,荒于嬉!

如果一个对象想隐藏一些信息?就像函数可以有局部变量,只能从内部访问这个函数,对象可以有私有变量。私有变量的信息你不想公开分享,他们只能从类中直接访问。

 

1 function Person(first,last,age) {
2    this.firstname = first;
3    this.lastname = last;
4    this.age = age;
5    var bankBalance = 7500;
6 }

 

Person类被修改为一个名为bankBalance的私有变量。注意,它看起来就像一个普通变量,但它是在构造函数中定义的人不使用这个,而是使用var。这使得bankBalance私有变量。

 eg:下面我们创建一个对象约翰使用构造函数。他可以有姓名和年龄。

 

console.log(john.bankBalance);

  按照上面的写法肯定是获取不到值的。那我们怎么做呢?

 

function Person(first,last,age) {
   this.firstname = first;
   this.lastname = last;
   this.age = age;
   var bankBalance = 7500;
  
   this.getBalance = function() {
      // your code should return the bankBalance
  
      return bankBalance;
   };
}

var john = new Person('John','Smith',30);
console.log(john.bankBalance);
console.log(john.getBalance());
var myBalance = john.getBalance();
console.log(myBalance);

  

posted on 2015-10-09 10:57  Crazy-H  阅读(216)  评论(0)    收藏  举报