資料屬性和訪問器屬性

2021-09-26 16:34:30 字數 1055 閱讀 2962

es5中定義了兩種屬性,分別是資料屬性和訪問器屬性。

1、資料屬性:資料屬性的四個特性分別是它的值(value)、可寫性(writable)、可列舉性(enumerable)和可配置性(configurable)。

var o = {};

//為物件o新增乙個值為1,屬性名為x,可寫,不可列舉,可配置的屬性。

object.defineproperty(o, 'x', );

如果要同時修改或建立多個屬,則需要使用object.defineproperties()。

var p = object.defineproperties({}, ,

y: });

console.log(p); //返回

2、訪問器屬性:訪問器屬性有兩大特性,getter方法和setter方法。

題一:

//如何在不更改**的情況下,獲得原person物件

var o = (function() ;

return ,

}}());

解答如下:

//使用defineproperty方法為物件原型新增自定義的訪問器屬性

//在查詢任意object()例項化物件的屬性self時,呼叫get方法,get內部this指向當前物件

object.defineproperty(object.prototype, 'self',

})console.log(o.run("self"));//輸出

題二:實現input表單和object物件的乙個屬性的雙向資料繫結

var obj = object.defineproperty({}, 'a', ,

get: function()

})$("input").on("input", function() )

注意:object.defineproperty()中不能同時設定訪問器屬性和value或者writable。

Object的資料屬性和訪問器屬性

一 資料屬性 1.資料屬性 它包含的是乙個資料值的位置,在這可以對資料值進行讀寫。2.資料屬性包含四個特性,分別是 configurable 表示能否通過delete刪除屬性從而重新定義屬性,能否修改屬性的特性,或能否把屬性修改為訪問器屬性,預設為true enumerable 表示能否通過for ...

JS中的資料屬性和訪問器屬性

資料屬性 包含乙個資料值的位置,在這個位置可以讀取和寫入值。有4個描述其行為的特性 1 configurable 表示能否通過delete刪除屬性,從而重新定義屬性,預設值為ture 2 enumerable 表示能否通過for in迴圈返回屬性,預設值為ture 3 writable 表示能否修改...

屬性訪問器

synthesize result 表示建立該屬性的訪問器,這樣就可以直接訪問result屬性。在沒有新增屬性訪問器的時候,在main中這樣實現 myclass myclass myclass alloc init myclass setresult hello myclass shixian 新增...