首頁  >  文章  >  web前端  >  javascript私有成員的實作方式實例詳解

javascript私有成員的實作方式實例詳解

伊谢尔伦
伊谢尔伦原創
2017-07-27 11:22:061423瀏覽

很多書上都是說,Javascript是無法真正實作Javascript私有成員的,因此在開發的時候,統一約定 __ 兩個底線開頭為私有變數。

後來,發現Javascript中閉包的特性,從而徹底解決了Javascript私有成員的問題。

function testFn(){
    var _Name;//定义Javascript私有成员
    this.setName = function(name){
     _Name = name; //从当前执行环境中获取_Name
    }
    this.getName = function(){
     return _Name;
    }
}// End testFn
var test = testFn();
alert(typeof test._Name === "undefined")//true
test.setName("KenChen");

test._Name 根本訪問不到,但是用物件方法能存取到,因為閉包能從目前的執行環境中取得資訊。

接下來我們來看看,共有成員是怎麼實作的

function testFn(name){
  this.Name = name;
  this.getName = function(){
   return this.Name;
  }
}
var test = new testFn("KenChen");
test.getName(); //KenChen
test.Name = "CC";
est.getName();//CC

接下來在看看類別靜態變數是怎麼實作的

function testFn(){
}
testFn.Name = "KenChen";
alert(testFn.Name);//KenChen
testFn.Name = "CC";
alert(testFn.Name);//CC

以上是javascript私有成員的實作方式實例詳解的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn