天天看點

JavaScript Object對象Object對象

  Object對象,是所有JavaScript對象的超類(基類)。Object.prototype(Obecjt的原型)定義了Js對象的基本方法和屬性。

參數:

①value {number | bool | string} :一個數字、布爾值或者字元串

傳回值:

{Number、Boolean、String} 傳回一個轉換後的對象

示例 :

說明:

1) 指派時,對象繼承新原型的所有方法和屬性,以及新原型的原型鍊中的所有方法和屬性。

2) 屬性名稱以兩個下劃線開始和結束。

3) 對象的__proto__ == 對象類的prototype

示例:

1) prototype為對象類的屬性。__proto__是對象的屬性。

2)  Js内置對象(Array、Date等對象)都有一個隻讀的prototype屬性。 可将屬性和方法添加到原型中,但不能為内置對象配置設定其他原型。

3) 自定義對象的prototype屬性可進行讀寫操作。

1) 設定或傳回建立此對象的構造函數。

2) 若一個對象有多層繼承,将傳回最先調用的構造函數。

3) obj.constructor.prototype 可表示對象的原型。

1) 對象的__proto__ 等于 類的prototype

2) 對象的constructor 等于 類,是以obj.constructor.prototype 可表示對象的原型。

  

①propertyName {string} :屬性名稱。

{bool} 判斷對象是否擁有一個指定名稱的本地定義(非繼承)的屬性;此方法不會檢查對象原型鍊中的屬性。

true :屬性為對象的執行個體屬性,非繼承。

false :屬性不為對象的執行個體屬性。

文法:

prototype.isPrototypeOf(object)

①obejct {object} :被檢測的對象。

{bool} 傳回某個原型是否出現在對象的原型鍊中

true :是

false :不是

①propertyName {string} :屬性名稱

{bool} 判斷屬性是否為執行個體屬性并且是可枚舉的(可用for/in循環枚舉),不考慮原型鍊中的成員。

參數:無

{object} 傳回目前對象關聯的原始值,若沒有相關聯的值,則傳回對象本身

①prototype {prototype} :傳回對象的原型,可以為null。若為null,對象的原型為undefined。

屬性描述符:設定屬性的一系列特性;

文法格式:

{object} 傳回一個指定原型和指定屬性的對象

①object {object} :對象

若對象包含此屬性,則是修改此屬性的特性;否則為為對象添加此屬性。

②propertyName {string} :屬性的名稱

說明 :

若對象包含此屬性,則是修改此屬性的特性;否則為添加此屬性。

1) 此操作不可逆,當機後無法進行解封。

2) 隻影響執行個體屬性,不影響原型屬性。

②propertyName {propertyName} 屬性名稱

{Array} 一個數組,包含對象的所有執行個體屬性和方法,不包含原型繼承的屬性和方法

{object} 傳回原型對象

{Array} 傳回一個數組,包含對象的可枚舉屬性和方法的名稱

此方法與getOwnPropertyNames()類似,但getOwnPropertyNames()包含了可枚舉和不可枚舉的成員

{object} 傳回此對象

分為資料屬性和通路器屬性;

兩者可互相轉換,若轉換後未設定enumerable和configurable特性(兩類屬性描述符都包含這2個特性),将預設采用轉換前的值。

說明:包含屬性的操作特性;如:設定值、是否可枚舉等等

特性名稱

描述

預設值

value

設定屬性的值

undefined

writable

是否可修改屬性的值;true:可修改屬性的值;false:不可修改屬性的值

false  

enumerable

是否可枚舉屬性;true:可枚舉,可通過for/in語句枚舉屬性;false:不可枚舉

false

configurable

是否可修改屬性的特性;true:可修改屬性的特性(如把writable從false改為true);false:不可修改屬性的特性

預設值:

1)在使用Object.defineProperty、Object.defineProperties 或 Object.create 函數的情況下添加資料屬性,writable、enumerable和configurable預設值為false。

2)使用對象直接量建立的屬性,writable、enumerable和configurable特性預設為true。

6.2 通路器屬性

說明:設定屬性的通路方式;set、get特性等

get

屬性的傳回值函數

set

屬性的設定值函數;含有一個指派參數

==================================系列文章==========================================

本篇文章:3.7 JavaScript Object對象

<a href="http://www.cnblogs.com/polk6/archive/2013/05/10/3071327.html" target="_blank">Web開發之路系列文章</a>

繼續閱讀