JS中關於物件的介紹

2021-10-23 13:08:49 字數 2064 閱讀 6961

介紹:物件是多個屬性的集合,使用鍵值對進行儲存

兩種方式:字面量和建構函式

字面量

var obj=

建構函式

var obj=

newobject()

;

兩種方式:點訪問符和中括號訪問符

點訪問符

訪問:

var name=obj.name;
寫入:

obj.name=

"terry"

;

中括號訪問符,可以適用於變數

var a=

"name"

;//obj[a]等價於obj["name"]等價於obj.name

"name"

in obj //檢測obj物件中是否有名為name的屬性

注意:只能遍歷出可迭代屬性,使用者建立的物件預設為可迭代屬性,不可迭代屬性不能被遍歷出來,但是可以訪問

for

(var k in obj)

delete obj.name;

//從物件obj中刪除name屬性

將物件轉換為字串,便於資料傳輸

兩種格式:json字串格式和查詢字串格式

序列化

var json=

json

.stringify

(obj)

;//格式:''

var qs=

querystring

(obj)

;//格式:'屬性名=屬性值&屬性名&屬性值'

反序列化:將json字串格式和查詢字串格式轉換為物件

var obj=

json

.parse

(json)

;var obj=querystring.

parse

(qs)

;

var obj=

newobject()

; obj.__proto__ //內部屬性,指向其建構函式的原型即object.prototype,不可迭代

例項不能呼叫其建構函式中的方法,但是可以呼叫其建構函式原型中的方法

object.

assign

(目標物件,

...源物件)

//將所有可列舉屬性的值從乙個或多個源物件複製到目標物件。它將返回目標物件。

object.

keys

(obj)

//獲取obj中所有可列舉屬性的屬性名,組成乙個陣列並返回

object.

values

(obj)

//獲取obj中所有可列舉屬性的屬性值,組成乙個陣列並返回

object.

defineproperty()

//定義或修改屬性

object.prototype.constructor //返回建立例項物件的object建構函式的引用,檢測資料型別

object.prototype.

tostring()

//返回乙個表示該物件的字串,如[object object]

object.prototype.

valueof()

//返回指定物件的原始值

object.prototype.

hasownproperty

(k)//判斷k是否是物件的自有屬性

object.prototype.

propertyisenumerable

(k)//判斷k是否可列舉

object.

defineproperty

(物件名,

"屬性名",,

get:

function()

})

關於 js中的arguments 物件

arguments物件包含了函式執行時的所有引數,arguments 0 就是第乙個引數,arguments 1 就是第二個引數,以此類推。這個物件只有在函式體內部,才可以使用。var f function one f 1,2,3 1 2 3 正常模式下,arguments物件可以在執行時修改。va...

js的location物件介紹

在寫前端js元件時,由於元件被單獨封裝到乙個js檔案中,而同時元件又有在裡面的話,找路徑就有相對路徑和絕對路徑2種辦法。而此時的相對路徑在呼叫這個js的頁面,所以沒法寫 同時相對路徑的.之類的,當資料夾移動後,維護起來很困難,所以無論從原則上,還是這個問題上,採用相對路徑都不好。那麼,我們只能用絕對...

Js中關於陣列常用函式的介紹

關於array的函式可分為兩類,第一類是會對原陣列修改的 第二類是不修改原陣列,返回新陣列。1.arrayobj.splice start,deletecount,item1 item2 itemn 從乙個陣列中移除乙個或多個元素,如果必要,在所移除元素的位置上插入新元素,返回所移除的元素。兩個用途...