js判斷是不是空對象

1.轉(zhuǎn)換成字符串進(jìn)行比較

function IsNullObj(obj){
    if(JSON.stringify(obj) === "{}"){
        console.log("true");
    }else{
        console.log("false");
    }
}
image.png

2.利用for in 原理判斷是否有key值

function IsNull(obj){  
    if(obj instanceof Array){  
        console.log('是數(shù)組')  
    }  
    else if(obj == undefined){  
        console.log('是undefined')  
    }  
    else if(obj == ''){  
        console.log('字符串')  
    }  
    else if(obj == null){  
        console.log('是null')  
    }  
    else{  
        for(var i in obj){  
            return false  
        }  
        return true  
    }  
}  
image.png
function IsEmptyObject(obj){
          if(!obj || typeof obj != 'object' || Array.isArray(obj)){
            return false;
          }
            //第一種
            //測試性能段
            /*
            console.time('first');
            if(JSON.stringify(obj) === '{}'){
                console.timeEnd ('first');
                return true
            }else{
                console.timeEnd ('first');
                return false;
            }
            */
            return (JSON.stringify(obj) === '{}')
            //第二種
            console.time('second');
            for(var key in obj){
                console.timeEnd ('second');
                return false 
            }
            console.timeEnd ('second');
            return true;
    }

1.解決思路

第一種就是粗暴的直接轉(zhuǎn)字符串,然后強(qiáng)行比較第二種就是利用for in的原理,然后一旦進(jìn)了循環(huán),說明有key值,那直接false啦,否則就是空對象

2.性能比較

下面測試一下兩個方法的性能比較第一種在a就是一個空對象的情況下,在Imac谷歌瀏覽器上平均耗時在0.012ms左右
第二種在a就是一個空對象的情況下慌闭,在Imac谷歌瀏覽器上平均耗時在0.007ms左右,性能差距為兩倍

第一種在a是一個普通對象的情況下,豆瓣的api對象躯舔,在Imac谷歌瀏覽器上平均耗時在0.08ms左右

第二種在a是一個普通對象的情況下驴剔,豆瓣的api對象,在Imac谷歌瀏覽器上粥庄,第一次稍慢丧失,0.02ms,平均耗時在0.0075ms左右,性能差距隨著對象越大,差距也會越大

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末惜互,一起剝皮案震驚了整個濱河市布讹,隨后出現(xiàn)的幾起案子琳拭,更是在濱河造成了極大的恐慌,老刑警劉巖描验,帶你破解...
    沈念sama閱讀 222,378評論 6 516
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件白嘁,死亡現(xiàn)場離奇詭異,居然都是意外死亡膘流,警方通過查閱死者的電腦和手機(jī)絮缅,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,970評論 3 399
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來呼股,“玉大人耕魄,你說我怎么就攤上這事∨硭” “怎么了吸奴?”我有些...
    開封第一講書人閱讀 168,983評論 0 362
  • 文/不壞的土叔 我叫張陵,是天一觀的道長缠局。 經(jīng)常有香客問我则奥,道長,這世上最難降的妖魔是什么狭园? 我笑而不...
    開封第一講書人閱讀 59,938評論 1 299
  • 正文 為了忘掉前任读处,我火速辦了婚禮,結(jié)果婚禮上妙啃,老公的妹妹穿的比我還像新娘。我一直安慰自己俊戳,他們只是感情好揖赴,可當(dāng)我...
    茶點(diǎn)故事閱讀 68,955評論 6 398
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著抑胎,像睡著了一般燥滑。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上阿逃,一...
    開封第一講書人閱讀 52,549評論 1 312
  • 那天铭拧,我揣著相機(jī)與錄音,去河邊找鬼恃锉。 笑死搀菩,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的破托。 我是一名探鬼主播肪跋,決...
    沈念sama閱讀 41,063評論 3 422
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼土砂!你這毒婦竟也來了州既?” 一聲冷哼從身側(cè)響起谜洽,我...
    開封第一講書人閱讀 39,991評論 0 277
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎吴叶,沒想到半個月后阐虚,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 46,522評論 1 319
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡蚌卤,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,604評論 3 342
  • 正文 我和宋清朗相戀三年实束,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片造寝。...
    茶點(diǎn)故事閱讀 40,742評論 1 353
  • 序言:一個原本活蹦亂跳的男人離奇死亡磕洪,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出诫龙,到底是詐尸還是另有隱情析显,我是刑警寧澤,帶...
    沈念sama閱讀 36,413評論 5 351
  • 正文 年R本政府宣布签赃,位于F島的核電站谷异,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏锦聊。R本人自食惡果不足惜歹嘹,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 42,094評論 3 335
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望孔庭。 院中可真熱鬧尺上,春花似錦、人聲如沸圆到。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,572評論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽芽淡。三九已至马绝,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間挣菲,已是汗流浹背富稻。 一陣腳步聲響...
    開封第一講書人閱讀 33,671評論 1 274
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留白胀,地道東北人椭赋。 一個月前我還...
    沈念sama閱讀 49,159評論 3 378
  • 正文 我出身青樓,卻偏偏與公主長得像或杠,于是被迫代替她去往敵國和親纹份。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,747評論 2 361

推薦閱讀更多精彩內(nèi)容

  • Android 自定義View的各種姿勢1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 172,312評論 25 707
  • 問答題47 /72 常見瀏覽器兼容性問題與解決方案? 參考答案 (1)瀏覽器兼容問題一:不同瀏覽器的標(biāo)簽?zāi)J(rèn)的外補(bǔ)...
    _Yfling閱讀 13,760評論 1 92
  • 1. Java基礎(chǔ)部分 基礎(chǔ)部分的順序:基本語法蔓涧,類相關(guān)的語法件已,內(nèi)部類的語法,繼承相關(guān)的語法元暴,異常的語法篷扩,線程的語...
    子非魚_t_閱讀 31,664評論 18 399
  • 1.當(dāng)你的才華還撐不起你的夢想時你惟一能做的就是多學(xué)習(xí),多讀書茉盏,多接交牛人〖矗現(xiàn)在我處于失業(yè)狀態(tài),不知道下一步該如何...
  • 終見丹桂溢暗香。 風(fēng)輕云淡處讶迁,共芳菲连茧。 道是無意染秋寒。 誰曾想巍糯,此處解感傷啸驯。 天冷漸生涼, 心緒結(jié)寸腸祟峦,總惆悵!...
    逸塵居士閱讀 260評論 0 0