理解物件和物件一些方法

2021-09-29 19:51:19 字數 2376 閱讀 8658

1.屬性型別:資料屬性和訪問器屬性

特性是內部值,用表示

一、資料屬性:

[[configurable]]:表示能否通過delete刪除屬性從而重新定義屬性,能否修改屬性的特性,能否把屬性修改為訪問器屬性。

[[enumerable]]:表示能否通過for-in迴圈屬性

[[writable]]:表示能否修改屬性的值

[[value]]:包含這個屬性的資料值

修改屬性的預設特性,用ecmascript5的object.defineproperty()方法。

var person=

object.

defineproperty

(person,

"name"

alert

(person.name)

//nicholas

person.name=

"222"

alert

(person.name)

//nicholas

//使用object.defineproperty建立的新屬性

//預設configurable,emumerable,writable預設為false

二、訪問器屬性

[[configurable]]

[[enumerable]]

[[get]]

[[set]]

訪問器屬性必須呼叫object.defineproperty()來定義。

var book=

object.

defineproperty

(book,

"year",,

set:

function

(newvalue)}}

)book.year=

2015

;console.

log(book.edition)

//2

在這個方法之前,要建立訪問器屬性,一般都使用兩個非標準方法:

//__definegetter__ ()和__definesetter__ ()

book.

__defindgeeter__

("year"

,function()

book.

__definesetter__

("year"

,funciton

(newvalue)

定義多個屬性 object.defineproperties()方法。

object.

defineproperties

(book,

, edition

,...

})

object.getownpropertydescriptor()方法

物件屬性訪問器有:configurable,enumerable,get,set

物件屬性屬性有:configurable,enumerable,writable,value

var desciptor=object.

getownpropertydescriptor

(book,

"_year"

)alert

(descriptor.value)

//2014

alert

(descript.configurable)

//false

object.getownpropertynames() //獲取所有例項屬性(包括不可以列舉)

object.key()獲取可列舉屬性的字串陣列。

物件的列舉

for

(var prop in obj)

ispropotypeof()方法確定物件之間是否存在這種關係

person.propotype.

isproptotypeof

(person1)

//true

ecmascript5新增方法 object.getpropotypeof()

object.

getpropotypeof

(person1)

===person.prototype //true

js Math物件的一些方法

1.math.pi 圓周率 3.141592657 常量,無法被賦值 2 math.sqrt n 開n平方 3.math.ceil math.pi 4 向上取整 4.math.floor math.pi 3 向下取整 5.math.round n 四捨五入 6.math.min a,b,c 取小 m...

物件導向的一些屬性和方法?

背景介紹 一 1 物件導向的一些屬性和方法?hasownproperty判斷乙個物件是否有名稱的屬性或物件,此方法無法檢查該物件的原型鏈中是否具有該屬性,該屬性必須是物件本身的乙個成員。constructor檢視例項物件是誰構造出來的 instanceof運算子檢視例項物件和建構函式是否在一條原型鏈...

關於物件導向的一些基礎認知和理解

物件導向的解釋在網上一大堆,但每個人在不同的階段都對它有不同的理解。在這裡我記錄一下我目前對它的一些理解。唉 之前寫的幾百字說不見就不見了,讓我又得從新寫,真是讓人煩惱。物件導向在目前的我看來,就是一種 實現的設計方式。它們夠讓人更加形象和直觀的去理解或者實現 在我剛開始學習的時候,或者說大多數人都...