第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

萌新!如何優(yōu)雅的判斷一個(gè)對(duì)象及該對(duì)象中的某個(gè)屬性是否存在(JS)感激不盡

萌新!如何優(yōu)雅的判斷一個(gè)對(duì)象及該對(duì)象中的某個(gè)屬性是否存在(JS)感激不盡

像這樣,需要拿到傳入?yún)?shù)的padding值,但是不確定是否傳入了eleStyle,更不確定eleStyle中的其他屬性是否傳入,目前使用三元表達(dá)式進(jìn)行判斷,但依然有些繁瑣...data:{show:true,//可能傳入的參數(shù)eleStyle:{//以下某一參數(shù)均有可能不傳width:100,height:100,padding:20,}}letpadding=eleStyle&&eleStyle.padding?eleStyle.padding:10//當(dāng)eleStyle.padding為0時(shí),所得到的padding值仍為默認(rèn),所以可能應(yīng)該是下面這種:letpadding=eleStyle&&eleStyle.padding!==undefined?eleStyle.padding:10如果需要的參數(shù)取自更深層的對(duì)象,那這樣寫也顯得十分臃腫,所以請(qǐng)教一下有沒有什么好的方法解決這種問題...
查看完整描述

2 回答

?
明月笑刀無情

TA貢獻(xiàn)1828條經(jīng)驗(yàn) 獲得超4個(gè)贊

letpadding='eleStyle.padding'.split('.').reduce((res,key)=>{returnres!=null?res[key]:null},data)
padding=padding!=null?padding:10;
                            
查看完整回答
反對(duì) 回復(fù) 2019-10-16
?
莫回?zé)o

TA貢獻(xiàn)1865條經(jīng)驗(yàn) 獲得超7個(gè)贊

30-seconds-of-code里有算是很優(yōu)雅的寫法,可以參考一下。其他做法的內(nèi)部實(shí)現(xiàn)可能不一樣,但理念很類似。
constget=(from,...selectors)=>
[...selectors].map(s=>
s
.replace(/\[([^\[\]]*)\]/g,'.$1.')
.split('.')
.filter(t=>t!=='')
.reduce((prev,cur)=>prev&&prev[cur],from)
);
                            
查看完整回答
反對(duì) 回復(fù) 2019-10-16
  • 2 回答
  • 0 關(guān)注
  • 338 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)