国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

在js中如何判斷一個(gè)對(duì)象是否為空

GT / 1451人閱讀

摘要:網(wǎng)上已經(jīng)有很多的回答了分別是中就是這么實(shí)現(xiàn)的中的這些辦法在判斷常規(guī)的對(duì)象的時(shí)候沒有問題,,當(dāng)一個(gè)對(duì)象為空的時(shí)候得到的答案也是預(yù)期的但是當(dāng)對(duì)象中有作為鍵值的時(shí)候呢測(cè)試結(jié)果就會(huì)被誤以為是空的雖然還有一個(gè)方法可以拿到,但是在正常的對(duì)象中他又為空了

網(wǎng)上已經(jīng)有很多的回答了分別是

for in (jquery中就是這么實(shí)現(xiàn)的)
for of
JSON.stringify() == "{}"
Object.getOwnPropertyNames()
Object.keys()
Object.values()
Underscore.js中的isEmpty

這些辦法在判斷常規(guī)的對(duì)象的時(shí)候沒有問題,,當(dāng)一個(gè)對(duì)象為空的時(shí)候得到的答案也是預(yù)期的

但是
當(dāng)對(duì)象中有symbol作為鍵值的時(shí)候呢???

測(cè)試:

結(jié)果:


就會(huì)被誤以為是空的
雖然還有一個(gè)方法Object.getOwnPropertySymbols可以拿到,但是在正常的對(duì)象中他又為空了

雖然把他們組合起來就可以解決問題,但是有一個(gè)新的api叫Reflect.ownKeys(),可以更方便的解決

當(dāng)然咋真正用的時(shí)候很少會(huì)那symbol去做一個(gè)對(duì)象的鍵值,但是在面試的時(shí)候,,這個(gè)問題可以說是高頻問題了

以上。

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://specialneedsforspecialkids.com/yun/101086.html

相關(guān)文章

  • 關(guān)于JSON.parse()和JSON.stringify()的性能小測(cè)試

    摘要:我們一般用來深拷貝,其過程說白了,就是利用將對(duì)象序列化字符串,再使用來反序列化還原對(duì)象。至于這行代碼為什么能實(shí)現(xiàn)深拷貝,以及它有什么局限性等等,不是本文要介紹的。小結(jié)論能不用和就不用,采用替代方案且性能更優(yōu)的。 JSON.parse(JSON.stringify(obj))我們一般用來深拷貝,其過程說白了,就是利用 JSON.stringify 將js對(duì)象序列化(JSON字符串),再使...

    oogh 評(píng)論0 收藏0
  • 如何檢查一個(gè)對(duì)象是否為空

    摘要:簡(jiǎn)化版如果有更好的方法歡迎留言請(qǐng)關(guān)注我的訂閱號(hào),不定期推送有關(guān)的技術(shù)文章,只談技術(shù)不談八卦 showImg(https://segmentfault.com/img/remote/1460000018733493?w=640&h=426); ?? 更多前端技術(shù)和知識(shí)點(diǎn),搜索訂閱號(hào) JS 菌 訂閱 檢查一個(gè)數(shù)組為空很容易,直接調(diào)用 length 方法即可,那么如何檢查一個(gè)對(duì)象是否為空呢 ...

    mindwind 評(píng)論0 收藏0
  • 深入理解 Event Loop

    摘要:即使現(xiàn)在支持,由于沒有多線程的機(jī)制,和執(zhí)行線程只能通過來通信,而且由于沒有鎖,無法訪問和對(duì)象。的單線程是指一個(gè)瀏覽器進(jìn)程中只有一個(gè)的執(zhí)行線程,即同一時(shí)刻內(nèi)只會(huì)有一段代碼在執(zhí)行。與單線程如何實(shí)現(xiàn)異步設(shè)計(jì)了一個(gè)事件循環(huán)的方式。眾所周知,JavaScript(以下簡(jiǎn)稱 JS) 是單線程語言,在 html5 中增加了 web workers,web workers 是新開了線程執(zhí)行的,那么 JS 還...

    Carbs 評(píng)論0 收藏0
  • js基礎(chǔ)(一):判斷類型

    摘要:注意類繼承時(shí)的問題繼承自方法中對(duì)象直接繼承和間接繼承的都會(huì)報(bào)解決的問題通常是讓對(duì)象的手動(dòng)指向自己將自己的類賦值給對(duì)象的屬性基類不會(huì)報(bào)了原博參考,,,,判斷為 js基礎(chǔ)(二):構(gòu)造函數(shù)與原型 一、常見實(shí)例 判斷是否為對(duì)象 let obj = {} // 1.Object.prototype.toString if (Object.prototype.toString.call(obj...

    hightopo 評(píng)論0 收藏0
  • 這些Zepto實(shí)用的方法集

    摘要:對(duì)象字面量形式通過構(gòu)造函數(shù)創(chuàng)建中是如何判斷的呢判斷是否為純粹的對(duì)象,必須滿足首先必須是對(duì)象不是對(duì)象并且原型要和的原型相等方法返回指定對(duì)象的原型即內(nèi)部屬性的值如果沒有繼承屬性,則返回。 前言 時(shí)間過得可真快,轉(zhuǎn)眼間2017年已去大半有余,你就說嚇不嚇人,這一年你成長(zhǎng)了多少,是否荒度了很多時(shí)光,亦或者天天向上,收獲滿滿。今天主要寫一些看Zepto基礎(chǔ)模塊時(shí),比較實(shí)用的部分內(nèi)部方法,在我們?nèi)?..

    caozhijian 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<