6 1 2 屬性型別

2021-10-01 22:37:04 字數 1756 閱讀 9224

包含乙個資料值的位置,有4個特性:

[[configurable]] 屬性特性是否可修改/刪除,預設true

[[enumerable]] 是否可使用for-in列舉,預設true

[[writable]] 是否可修改屬性值,預設true

[[value]] 屬性值,預設undefined

object.defineproperty方法修改特性值,接受三個引數:

物件名,屬性名,修改的特性物件

let person =

;object.

defineproperty

(person,

'name',)

;console.

log(person.name)

;//zz

person.name =

'zxx'

;console.

log(person.name)

;//zz

但是屬性修改為不可配置之後,就不可再改回可配置

let person =

;object.

defineproperty

(person,

'name',)

;console.

log(person.name)

;//zz

delete person.name;

console.

log(person.name)

;//zz

let person =

;object.

defineproperty

(person,

'name',)

;object.

defineproperty

(person,

'name',)

;

直接呼叫object.defineproperty方法新增屬性值,上述(前三個)特性預設值為false

let person =

;object.

defineproperty

(person,

'name',)

;person.name =

'zxx'

;console.

log(person.name)

;//zz 不可修改

delete person.name;

console.

log(person.name)

;//zz 不可配置

包含一對兒getter 和 setter 函式(非必須),有4個特性:

[[configurable]]

[[enumerable]]

[[get]] 讀取屬性時呼叫的函式,預設undefined

[[set]] 寫入屬性時呼叫的函式,預設undefined

訪問器屬性不能直接定義,使用object.defineproperty定義

let book =

;object.

defineproperty

(book,

'year',,

set:

function

(newvalue)}}

);book.year =

2005

;console.

log(book.edition)

;//2

有待後續研讀

6 1 2將共享屬性遷移到原型中去

function shape shape.prototype.name shape shape.prototype.tostring function function twodshape twodshape.prototype new shape twodshape.prototype.const...

codeup墓地 習題6 12

include int main if 48 a i a i 57 if 97 a i a i 122 puts a 本體關鍵在於對ascii表中0 9,a z,a z位置的認知 0 9對應48 57,a z對應65 90,a z對應97 122.在字元陣列中直接輸入數或者字元均代表的是ascii值...

容器的使用(6 12)

1 執行互動式的容器 sudo docker run i t ubuntu 14.04 bin bash t 是在容器內指定乙個偽終端或終端。i 允許你對容器內的標準輸入 stdin 進行互動。就是可以輸入資訊了 如下圖,此時已進入14.04系統的容器。此時可以在終端中輸入命令的 cat proc ...