例子: 根據(jù)id獲取一個對象數(shù)組中的某個對象的屬性const stage = [
{ id: 0, name: 'a' },
{ id: 1, name: 'b' },
{ id: 2, name: 'c' },
{ id: 3, name: 'd' },
{ id: 4, name: 'e' },
]// 寫法1:// 存在的問題:如果沒有找到對象,find()就會返回undefined,導(dǎo)致獲取name屬性的時候會報錯。let name = stage.find(v => v.id ===id).name// 寫法2:// 存在的問題:重復(fù)計算let name = stage.find(v => v.id ===id) ? stage.find(v => v.id ===id).name : '';// 寫法3:// 存在的問題:需要引入額外的步驟let find = stage.find(v => v.id ===id)let name = find && find.name期望希望像寫法1那樣一行完成所有方法的調(diào)用同時能避免中間方法 返回undefined 而出錯的問題。
如何優(yōu)雅的處理函數(shù)式調(diào)用中的undefined
繁星淼淼
2018-12-16 15:33:54