手寫lookup函數

// 函數的功能:可以在dataObj對象中,尋找用連續點符號的keyName屬性 // 比如dataObj是: // { // a: { // b: { // c: 100 // } // } // } // 那麼lookup(dataObj,'a.b.c')返回的結果就是100 export default function lookup(dataObj,keyName) { console.log(dataObj,keyName) // 看看keyName中有沒有點符號,但是不能是點本身 if(keyName.indexOf('.') != -1 && keyName != '.'){ // 如果有點符號,那麼拆開 var keys = keyName.split('.') var temp = dataObj for(let i=0;i<keys.length;i++){ temp = temp[keys[i]] console.log(temp) } console.log(temp) return temp } // 如果這裏沒有點符號 return dataObj[keyName] } lookup({ m: { n: { p: 100 } } },'m.n.p')
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章