真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯網站制作重慶分公司

怎么在JavaScript中使用getters和setter

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

十多年的橋西網站建設經驗,針對設計、前端、開發(fā)、售后、文案、推廣等六對一服務,響應快,48小時及時工作處理。營銷型網站建設的優(yōu)勢是能夠根據用戶設備顯示端的尺寸不同,自動調整橋西建站的顯示方式,使網站能夠適用不同顯示終端,在瀏覽器中調整網站的寬度,無論在任何一種瀏覽器上瀏覽網站,都能展現優(yōu)雅布局與設計,從而大程度地提升瀏覽體驗。創(chuàng)新互聯公司從事“橋西網站設計”,“橋西網站推廣”以來,每個客戶項目都認真落實執(zhí)行。

大多數面向對象的編程語言都存在getter和setter,包括JavaScript。它們是代碼構造,可幫助開發(fā)人員以安全的方式訪問對象的屬性。使用getter,您可以從外部代碼訪問(“獲取”)屬性的值,而setter允許您更改(“設置”)它們的值。我們將向您展示如何在JavaScript中創(chuàng)建getter和setter。

JavaScript對象可以具有多個屬性和存儲的靜態(tài)數據和動態(tài)功能的方法。屬性是靜態(tài)鍵值對,而方法是特定于對象的函數。

例如,Car.color可以是屬性,而Car.drive()可以是Car對象的方法。使用getter,您可以訪問Car對象的color屬性,使用setter,您可以修改其值(例如,從藍色變?yōu)楹谏?/p>

使用getter和setter,您只能獲取和設置屬性的值,而不能獲取方法,因為方法不是靜態(tài)的。

您可以通過三種不同的方式創(chuàng)建getter和setter:

  1. 使用默認方法語法(getter和setter方法),

  2. 使用get和set關鍵字,

  3. 使用Object.defineProperty()方法。

  

Getters和Setters

Getters和Setters使你可以快速獲取或設置一個對象的數據。一般來說,一個對象擁有兩個方法,分別用于獲取和設置某個值,比如:

{

getValue: function(){

return this._value;

},

setValue: function(val){

this._value = val;

}

}

用這種方式寫JavaScript的一個明顯的好處是:你可以用它來隱藏那些不想讓外界直接訪問的屬性。

吸氣方法

獲取對象屬性的最簡單方法是使用每個屬性的默認方法語法定義getter。讓我們看一個如何使用這種技術創(chuàng)建getter的示例。該MYCAR對象有兩個屬性:顏色和制作。這是您使用對象文字創(chuàng)建它的方法:

var myCar = {   

    color:“blue”,

    make:“Toyota”

};

如果需要,可以使用以下代碼直接訪問顏色并創(chuàng)建屬性:

myCar.color;

// 藍色

myCar.make;

//豐田

盡管這種技術有效,但使用getter而不是直接調用屬性具有許多優(yōu)點。例如,您可以在檢索其值之前對屬性執(zhí)行操作或檢查(例如  if-else語句)。 

關于get關鍵字最重要的一點是它定義了一個訪問器屬性,而不是一個方法。因此,它不能與存儲其訪問的值的數據屬性具有相同的名稱。在上面的代碼中,defColor 和defMake是數據屬性,而color和make是訪問器屬性。

這也是為什么你需要使用在getter名稱之后不使用括號的屬性語法來調用getter的原因(例如myCar.color)。

由于舊版IE8不支持get關鍵字,因此如果您需要支持舊版瀏覽器,請使用getter方法。

感謝各位的閱讀,以上就是“怎么在JavaScript中使用getters和setter”的內容了,經過本文的學習后,相信大家對怎么在JavaScript中使用getters和setter這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是創(chuàng)新互聯,小編將為大家推送更多相關知識點的文章,歡迎關注!


本文題目:怎么在JavaScript中使用getters和setter
當前鏈接:http://weahome.cn/article/gdhgep.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部