日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 前端技术 > javascript >内容正文

javascript

039_JavaScript对象访问器

發布時間:2025/4/17 javascript 64 豆豆
生活随笔 收集整理的這篇文章主要介紹了 039_JavaScript对象访问器 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

1. JavaScript訪問器(Getter和Setter)

1.1. Getter(get關鍵詞)來獲取屬性的值。

// 創建對象 var person = {firstName: "Bill",lastName : "Gates",language : "en",get lang() {return this.language;} };// 使用getter來顯示來自對象的數據 document.getElementById("demo").innerHTML = person.lang;

1.2. Setter(set關鍵詞)來設置屬性的值。

var person = {firstName: "Bill",lastName : "Gates",language : "",set lang(lang) {this.language = lang;} };// 使用setter來設置對象屬性 person.lang = "en";// 顯示來自對象的數據 document.getElementById("demo").innerHTML = person.language;

2. JavaScript函數還是Getter?

2.1. 使用函數:

var person = {firstName: "Bill",lastName : "Gates",fullName : function() {return this.firstName + " " + this.lastName;} };// 使用方法來顯示來自對象的數據 document.getElementById("demo").innerHTML = person.fullName();

2.2. 使用Getter:

var person = {firstName: "Bill",lastName : "Gates",get fullName() {return this.firstName + " " + this.lastName;} };// 使用 getter 來顯示來自對象的數據 document.getElementById("demo").innerHTML = person.fullName;

2.3. 以函數形式訪問fullName: person.fullName()。

2.4. 以屬性形式訪問fullName: person.fullName。

2.5. 以屬性形式訪問提供了更簡潔的語法。

3. 數據質量

3.1. 使用getter和setter時, JavaScript可以確保更好的數據質量。

3.2. 在本例中, 使用upperLang屬性以大寫形式返回language屬性的值:

var person = {firstName: "Bill",lastName : "Gates",language : "en",get upperLang() { // 返回language屬性的大寫值return this.language.toUpperCase();} };// 使用getter來顯示來自對象的數據 document.getElementById("demo").innerHTML = person.upperLang;

3.3. 在本例中, 使用lang屬性將大寫值存儲在language屬性中:

var person = {firstName: "Bill",lastName : "Gates",language : "",// 以大寫值設置language屬性, 不管用戶設置的lang值是否大寫set upperLang(lang) { this.language = lang.toUpperCase();} };// 使用setter來設置對象屬性 person.upperLang = "en";// 顯示來自對象的數據 document.getElementById("demo").innerHTML = person.language;

4. 為什么使用Getter和Setter?

4.1. 它提供了更簡潔的語法。

4.2. 它允許屬性和方法的語法相同。

4.3. 它可以確保更好的數據質量。

4.4. 有利于后臺工作。

5. 例子

5.1. 代碼

<!DOCTYPE html> <html lang="zh-CN"><head><meta charset="utf-8" /><title>JavaScript對象訪問器</title></head><body><script type="text/javascript">var obj = {counter : 0,set add(value) {this.counter += value;},get increment() {this.counter++;},get decrement() {this.counter--;},set subtract(value) {this.counter -= value;},get reset() {this.counter = 0;}};// 操作計數器document.write('obj.counter = ' + obj.counter + '<br />');obj.add = 5;document.write('obj.counter = ' + obj.counter + '<br />');obj.increment;document.write('obj.counter = ' + obj.counter + '<br />');obj.decrement;document.write('obj.counter = ' + obj.counter + '<br />');obj.subtract = 2;document.write('obj.counter = ' + obj.counter + '<br />');obj.reset;document.write('obj.counter = ' + obj.counter + '<br />');</script></body> </html>

5.2. 效果圖

總結

以上是生活随笔為你收集整理的039_JavaScript对象访问器的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。