javascript對(duì)象3個(gè)屬性特征
對(duì)象特征:

1、writable:可寫(xiě)
writable表示是否可以設(shè)置屬性的值
let obj = {age:10}
obj.age = 1 // 給屬性重新賦值
console.log(obj.age) //1
2、enumerable:可枚舉
enumerable特性指是否可以在 for/in 循環(huán)中返回屬性名字,默認(rèn)自有屬性和繼承屬性都可以枚舉
let obj = {name:"zhang", age:20, sex:"男"}
let newObj = Object.create(obj)
newObj.height = 200
for(p in newObj){
console.log(p,"->", newObj[p])
}
輸出:
height -> 200
name -> zhang
age -> 20
sex -> 男
3、configurable:可配置
configurable表示是否可通過(guò)delete刪除屬性
let obj = {name:"jim"}
delete obj.name // 刪除后該屬性將不存在
console.log(obj.name) //undefined
對(duì)象中的自有屬性上面3個(gè)特性默認(rèn)都是 true 。如果要修改這些特征的默認(rèn)值,可以使用 Object.defineProperty() 方法。defineProperty 接收3個(gè)參數(shù), 對(duì)象、要修改的屬性名、特征值對(duì)象。
例如:如果要設(shè)置 sex 屬性的 writable 為 false , 則可通過(guò) defineProperty()方法來(lái)操作
let obj = {name:"zhang", age:20, sex:"男"}
Object.defineProperty(obj, "sex", {writable:false})
obj.sex = "女"
console.log(obj.sex) // 男
設(shè)置為writable為false后,即使給sex屬性重新賦值為 女 ,但是它的值還是原來(lái)的 男 ,可通過(guò)類(lèi)似的操作配置屬性的可枚舉和可配置特性。
到此這篇關(guān)于javascript對(duì)象3個(gè)屬性特征的文章就介紹到這了,更多相關(guān)javascript對(duì)象屬性特征內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
JavaScript獲取上傳文件相關(guān)信息示例詳解
這篇文章主要為大家介紹了JavaScript獲取上傳文件相關(guān)信息示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-08-08
詳解Jest?如何支持異步及時(shí)間函數(shù)實(shí)現(xiàn)示例
這篇文章主要為大家介紹了Jest?如何支持異步及時(shí)間函數(shù)實(shí)現(xiàn)示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-09-09
WebAssembly增強(qiáng)前端應(yīng)用技巧詳解
這篇文章主要為大家介紹了WebAssembly增強(qiáng)前端應(yīng)用技巧示例詳解,<BR>有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-02-02
微信小程序 網(wǎng)絡(luò)請(qǐng)求(GET請(qǐng)求)詳解
這篇文章主要介紹了微信小程序 網(wǎng)絡(luò)請(qǐng)求(GET請(qǐng)求)詳解的相關(guān)資料,需要的朋友可以參考下2016-11-11
微信小程序 監(jiān)聽(tīng)手勢(shì)滑動(dòng)切換頁(yè)面實(shí)例詳解
這篇文章主要介紹了微信小程序 監(jiān)聽(tīng)手勢(shì)滑動(dòng)切換頁(yè)面實(shí)例詳解的相關(guān)資料,需要的朋友可以參考下2017-06-06

