資料屬性:包含乙個資料值的位置,在這個位置可以讀取和寫入值。有4個描述其行為的特性:
(1)configurable:表示能否通過delete刪除屬性,從而重新定義屬性,預設值為ture;
(2)enumerable:表示能否通過for-in迴圈返回屬性,預設值為ture;
(3)writable:表示能否修改屬性的值,預設為ture;
(4)vaule:包含這個屬性的資料值,讀取屬性時,從這個位置讀,寫屬性時,將新值儲存進入,預設值為undefined。
var person = {};
object.defineproperty(person, "name", );
上例中,建立了乙個person物件,configurable為false表示不能通過delete刪除屬性,而此例子中writable預設為ture,即可修改屬性的值,通過vaule將屬性值修改為「nicholas」。
訪問器屬性:不包含屬性值,只包含getter和setter函式。讀取訪問器屬性時,呼叫getter函式,返回有效的值;在寫入訪問器屬性時,呼叫setter函式傳入新值。(這兩個函式不是
必需的),其有4干擾描述其行為的特性;
(1) configurable:表示是否能通過delete刪除屬性從而重新定義屬性,能否修改屬性的特性,能否把屬性修改為訪問器屬性,預設值為ture;
(2) enumerable:表示能否用for-in迴圈返回,預設值為ture;
(3) get:讀取屬性時呼叫的函式,預設undefined;
(4 )set:寫入屬性時呼叫的函式,預設undefined。
var book = ;
object.defineproperty(book, "year", ,
set: function(newvalue)
}});
book.year = 2005;
alert(book.edition); //2
使用訪問器屬性時,常常會導致其他屬性也發生變化,上例中edition發生了變化。 資料屬性和訪問器屬性
es5中定義了兩種屬性,分別是資料屬性和訪問器屬性。1 資料屬性 資料屬性的四個特性分別是它的值 value 可寫性 writable 可列舉性 enumerable 和可配置性 configurable var o 為物件o新增乙個值為1,屬性名為x,可寫,不可列舉,可配置的屬性。object.d...
Object的資料屬性和訪問器屬性
一 資料屬性 1.資料屬性 它包含的是乙個資料值的位置,在這可以對資料值進行讀寫。2.資料屬性包含四個特性,分別是 configurable 表示能否通過delete刪除屬性從而重新定義屬性,能否修改屬性的特性,或能否把屬性修改為訪問器屬性,預設為true enumerable 表示能否通過for ...
關於 js 的訪問器屬性
訪問器屬性是為了解決 開關的保護是死板的,不靈活的,法用自定義規則保護屬性,注意 每個資料屬性的縮微物件中都包含四個屬性 訪問器屬性的 如下 建立乙個物件 var lilei 呼叫函式 object.defineproperties lilei,uage set function value els...