国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 語(yǔ)言 > JavaScript > 正文

vue實(shí)現(xiàn)動(dòng)態(tài)數(shù)據(jù)綁定

2024-05-06 15:17:50
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友

實(shí)現(xiàn)的步驟:

1.監(jiān)聽(tīng)對(duì)象屬性的讀取與變化

Object.defineProperty() 方法會(huì)直接在對(duì)象上定義一個(gè)新的的屬性,或者已經(jīng)存在的屬性并且返回這個(gè)屬性

語(yǔ)法是 Object.defineProperty(obj, prop, descript)

obj: 目標(biāo)對(duì)象

prop: 需要定義或修改的屬性的名字

descript: 將被定義或修改的屬性的描述符

描述:

這個(gè)方法精確添加或修改對(duì)象的屬性,我們添加的屬性是可以枚舉的屬性(Object.keys()/ for...in)

對(duì)象里面存在是屬性描述存在的形式是:

數(shù)據(jù)描述符:擁有可寫(xiě)入或不可以寫(xiě)入的屬性(相當(dāng)于口令密碼)

存取描述符:由一對(duì)getter-setter 函數(shù)功能來(lái)描述的屬性(方法)

注意:**描述符**必須是兩種形式之一,不能同時(shí)是兩者。

數(shù)據(jù)描述符和存取描述符均具有以下可選鍵值:

1.configurable:當(dāng)且僅當(dāng)該屬性的 configurable 為 true 時(shí),該屬性描述符才能夠被改變,也能夠被刪除。默認(rèn)為 false

2.enumerable:當(dāng)且僅當(dāng)該屬性的 enumerable 為 true 時(shí),該屬性才能夠出現(xiàn)在對(duì)象的枚舉屬性中。默認(rèn)為 false

數(shù)據(jù)描述符:

1.value:該屬性對(duì)應(yīng)的值。可以是任何有效的 JavaScript 值(數(shù)值,對(duì)象,函數(shù)等)。默認(rèn)為 undefined。

2.writable:當(dāng)且僅當(dāng)該屬性的 writable 為 true 時(shí),該屬性才能被賦值運(yùn)算符改變。默認(rèn)為 false。

存取描述符同時(shí)具有以下可選鍵值:

1.get:一個(gè)給屬性提供 getter 的方法,如果沒(méi)有 getter 則為 undefined。該方法返回值被用作屬性值。默認(rèn)為 undefined。

2.set:一個(gè)給屬性提供 setter 的方法,如果沒(méi)有 setter 則為 undefined。該方法將接受唯一參數(shù),并將該參數(shù)的新值分配給該屬性。默認(rèn)為 undefined。

示例:

創(chuàng)建屬性

var o = {};Object.defineProperty(o, "a", {value : 37,                writable : true,                enumerable : true,                configurable : true});console.log(o.a);Object.defineProperty(o, "b", {get : function(){ /*console.log( bValue)*/ return value },                set : function(newValue){ bValue = newValue; },                enumerable : true,                configurable : true});o.b = 38;

修改屬性

當(dāng)屬性特性(property attribute) writable 設(shè)置為false時(shí),表示 non-writable,屬性不能被修改。

var o = {}; // 創(chuàng)建一個(gè)新對(duì)象Object.defineProperty(o, "a", { value : 37,                writable : false });console.log(o.a); // 打印 37o.a = 25; // 沒(méi)有錯(cuò)誤拋出(在嚴(yán)格模式下會(huì)拋出,即使之前已經(jīng)有相同的值)console.log(o.a); // 打印 37, 賦值不起作用。

一般的setter 和 getters

發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表

圖片精選

主站蜘蛛池模板: 湾仔区| 阜新| 刚察县| 乌鲁木齐市| 独山县| 大港区| 久治县| 新竹市| 通城县| 河北区| 新兴县| 马公市| 和平区| 邵阳县| 清镇市| 鸡西市| 合江县| 襄城县| 龙岩市| 台南县| 清镇市| 台山市| 大荔县| 甘谷县| 门源| 浏阳市| 长子县| 金溪县| 东乌珠穆沁旗| 柳河县| 丹凤县| 山东省| 莆田市| 普陀区| 台州市| 吕梁市| 武安市| 东丰县| 图木舒克市| 大余县| 通道|