源代碼:
1 /* 2 對象數組添加字段 3 參數:1.待添加數組,2.待添加字段key,3.待添加value|非必須,默認為null 4 */ 5 addFieldArr(arr, key, value = null, level = 0) { 6 return arr.map(item => { 7 if (item.children && item.children.length > 0) { 8 item.children = this.addFieldArr(item.children, key, value, level + 1) 9 } 10 let obj = { 11 ...item, 12 level 13 } 14 obj[key] = value 15 return obj 16 }) 17 },
參數解析:{ arr: 待處理數組 key: 待添加字段名 value: 新加字段的值,level: 樹形等級,默認從0開始,可不傳 }