91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

JavaScript的setter與getter方法的實例應用

發布時間:2021-08-12 17:18:57 來源:億速云 閱讀:125 作者:chen 欄目:web開發

這篇文章主要講解了“JavaScript的setter與getter方法的實例應用”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“JavaScript的setter與getter方法的實例應用”吧!

Javascript對象的屬性是由名字,值和一組特性構成的。那么首先,來了解一下對象的兩種屬性:

數據屬性,我們經常使用,應該很熟悉
訪問器屬性,也稱存取器屬性

何為存取器屬性?就是一組獲取和設置值的函數。在ECMAScript5中,屬性值可以用一個或兩個方法設置,這兩個方法就是getter和setter;因此getter和setter定義的屬性被稱為存取器屬性。

var o = {
  get val(){
    /*函數體*/
    return ;
  },
  set val(n){
    /*函數體*/
  }
}

上面的就是一個存取器屬性定義的最簡單的方法,可以看出getter和setter方法其實就是取代function的一個函數。

var o = {
  a:3,
  get val(){
    return Math.pow(this.a,2);
  }
}

console.log(o.val);//9
o.val = 100;
console.log(o.val);//9

getter方法是無參數,并且有返回值的;當單獨設置getter方法時,只能獲取屬性值,無法更改其定義的屬性值的,保證了數據的安全性;

var o = {
  a:3,
  set val(n){
    this.a = n;
  }
}

console.log(o.val);//undefined

setter方法是有參數,沒有返回值的;當單獨設置setter方式時,是無法讀取屬性值的;

var o ={
  a:3,
  get val(){
    return Math.pow(this.a,n);
  },
  set val(n){
    this.a = Math.max(this.a,n);
  }
}

console.log(o.a);//3
console.log(o.val);//9
o.val = 10;
console.log(o.a);//10
console.log(o.val);//100

通過上面的代碼可以看出,其中this是指其對象(即代碼中的“o”);

var o ={
   a:3,
  get val(){
    return Math.pow(this.a,n);
  },
  set val(n){
    this.a = Math.max(this.a,n);
  }
}

o.val = 10;
var foo = Object.create(o);
console.log(foo.val);//10
foo.val = 9;
console.log(foo.val);//10

另外,存取器屬性也是可以被繼承的;

感謝各位的閱讀,以上就是“JavaScript的setter與getter方法的實例應用”的內容了,經過本文的學習后,相信大家對JavaScript的setter與getter方法的實例應用這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關知識點的文章,歡迎關注!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

房山区| 晋城| 昌图县| 罗定市| 桃源县| 泸定县| 大足县| 万安县| 司法| 慈利县| 综艺| 垫江县| 沙田区| 营山县| 淳化县| 洛扎县| 浮梁县| 监利县| 荆门市| 古田县| 绍兴市| 蒙阴县| 南乐县| 武陟县| 张家口市| 佛坪县| 西贡区| 韶山市| 永胜县| 济南市| 哈密市| 拜泉县| 宁陕县| 铜鼓县| 通江县| 安阳县| 新巴尔虎左旗| 陆川县| 印江| 恭城| 许昌县|