摘要:遍歷對象的鍵的所有方法預(yù)定義如下對象在上定義個不可枚舉的屬性方法用于遍歷自身和原型對象的可枚舉的屬性輸出方法用于返回對象自身的所有可枚舉屬性輸出方法用于返回對象所有屬性,包含可枚舉屬性和不可枚舉屬性,不包含屬性輸出方法用于返回對象所有屬性,
遍歷對象的鍵的所有方法
預(yù)定義如下對象:
Object.prototype.parentKey = "pValue"; Object.prototype.parentFun = function(){}; let obj = { mykey: "value", myFun: function(){}, [Symbol()]:"symbolValue" } // 在obj上定義2個不可枚舉的屬性 Object.defineProperty(obj, "myUnemurableKey", {value:"value22", enumerable:false}); Object.defineProperty(obj, "myUnenmurableFunc", {value:function(){}, enumrable:false});for ... in方法
用于遍歷自身和原型對象的可枚舉的屬性
for (let key in obj) { console.log(key) }
輸出:
mykey
myFun
parentKey
parentFun
用于返回對象自身的所有可枚舉屬性
Object.keys(obj)
輸出:
["mykey", "myFun"]
用于返回對象所有屬性,包含可枚舉屬性和不可枚舉屬性,不包含Symbol屬性
Object.getOwnPropertyNames(obj)
輸出:
["mykey", "myFun", "myUnemurableKey", "myUnenmurableFunc"]
用于返回對象所有屬性,包含可枚舉屬性和不可枚舉屬性,只包含Symbol屬性
Object.getOwnPropertySymbols(obj)
輸出:
[Symbol()]
用于返回對象所有屬性,包含可枚舉屬性和不可枚舉屬性,也包含Symbol屬性
Reflect.ownKeys(obj)
輸出:
["mykey", "myFun", "myUnemurableKey", "myUnenmurableFunc", Symbol()]
這個方法可以返回對象自身所有屬性的描述對象,包含key, value, writable, enumerable, configurable。
Object.getOwnPropertyDescriptors(obj)
輸出:
{ "mykey": { "value": "value", "writable": true, "enumerable": true, "configurable": true }, "myFun": { "writable": true, "enumerable": true, "configurable": true }, "myUnemurableKey": { "value": "value22", "writable": false, "enumerable": false, "configurable": false }, "myUnenmurableFunc": { "writable": false, "enumerable": false, "configurable": false } }
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://specialneedsforspecialkids.com/yun/94376.html
摘要:事實(shí)上,不僅僅是數(shù)組,任何具有接口且每個成員都是一個雙元素的數(shù)組的數(shù)據(jù)結(jié)構(gòu)都可以當(dāng)做構(gòu)造函數(shù)的參數(shù)。返回所有成員的遍歷器需要特別注意的是,的遍歷順序就是插入順序。轉(zhuǎn)為轉(zhuǎn)為,正常情況下,所有鍵名都是字符串。 Map JavaScript 的對象(Object),本質(zhì)上是鍵值對的集合(Hash 結(jié)構(gòu)),但是傳統(tǒng)上只能用字符串當(dāng)作鍵。這給它的使用帶來了很大的限制。為了解決這個問題,ES6 提...
摘要:中模擬與長久以來,數(shù)組一直是中唯一的集合類型。用數(shù)組初始化集合事實(shí)上,只要是可迭代對象數(shù)組集合集合,都可以作為構(gòu)造函數(shù)的參數(shù)。構(gòu)造函數(shù)通過迭代器從參數(shù)中提取值。 ES5中模擬Set與Map 長久以來,數(shù)組一直是JavaScript中唯一的集合類型。如果開發(fā)者們需要使用非數(shù)值型索引,就會用非數(shù)組對象創(chuàng)建所需的數(shù)據(jù)結(jié)構(gòu),而這就是Set集合與Map集合的早期實(shí)現(xiàn)。 一般來說,Set集合常被用...
摘要:返回一個布爾值,表示該值是否為的成員。清除所有成員,沒有返回值。該數(shù)組中的每一項(xiàng)也必須是數(shù)組,內(nèi)部數(shù)組的首個項(xiàng)會作為鍵,第二項(xiàng)則為對應(yīng)值。返回所有成員的遍歷器需要特別注意的是,的遍歷順序就是插入順序。 Js大部分歷史時期都只存在一種集合類型,也就是數(shù)組類型。數(shù)組在 JS 中的使用正如其他語言的數(shù)組一樣,但缺少更多類型的集合導(dǎo)致數(shù)組也經(jīng)常被當(dāng)作隊(duì)列與棧來使用。數(shù)組只使用了數(shù)值型的索引,而...
摘要:我對數(shù)據(jù)結(jié)構(gòu)的學(xué)習(xí)最近在上做了一道題目,嗯,我這個渣渣沒有做出來,然后看了別人的解決方案,是時候?qū)W習(xí)一下的了。。。。。讀取對應(yīng)的鍵值,如果找不到返回鍵是函數(shù)返回一個布爾值,表示某個鍵是否在數(shù)據(jù)結(jié)構(gòu)中。 我對ES6數(shù)據(jù)結(jié)構(gòu)Map的學(xué)習(xí) 最近在CodeWars上做了一道題目,嗯,我這個渣渣沒有做出來,然后看了別人的解決方案,Map??? 是時候?qū)W習(xí)一下ES6的Map了。。。。。 以下是原題...
摘要:本身是一個構(gòu)造函數(shù),用來生成數(shù)據(jù)結(jié)構(gòu)。該數(shù)組的成員是一個個表示鍵值對的數(shù)組。張三張三事實(shí)上,不僅僅是數(shù)組,任何具有接口每個成員都是一個雙元素的數(shù)組的數(shù)據(jù)結(jié)構(gòu)都剋以當(dāng)作構(gòu)造函數(shù)的參數(shù)。實(shí)例的屬性和操作方法屬性屬性返回結(jié)構(gòu)的成員總數(shù)。 ES6提供了新的數(shù)據(jù)結(jié)構(gòu)Set,它類似與數(shù)組,但是成員值都是唯一的,沒有重復(fù)的值。 Set本身是一個構(gòu)造函數(shù),用來生成Set數(shù)據(jù)結(jié)構(gòu)。 const s = ...
閱讀 2672·2021-11-18 10:02
閱讀 3402·2021-09-28 09:35
閱讀 2586·2021-09-22 15:12
閱讀 742·2021-09-22 15:08
閱讀 3071·2021-09-07 09:58
閱讀 3464·2021-08-23 09:42
閱讀 725·2019-08-30 12:53
閱讀 2072·2019-08-29 13:51