天天看點

前端項目實戰66-數組資料處理詳解

let obj = {
            "color-1": "1",
            "color-2": "2",
            "color-3": "3",
            "geyao-1": "1",
            "geyao-2": "2",
            "geyao-3": "3"
        }

         function myFunc(obj) {
           
            const newObj = {}
            console.log(Object.entries(obj),"Object")
            for (const [key, value] of Object.entries(obj)) {
                const strList = key.split('-')
                const groupId = strList.pop() // 拿到最後一個"-"之後的字元
                console.log(groupId,"groupId")
                const keyName = strList.join('') // 最後一個"-"之前的所有字元再加起來(理論上如果隻有一個"-"可以直接key.split('-')[0]和key.split('-')[1])
                console.log(keyName,"keyName")
                //如果存在這個不存在 就建立一個對象 否則将目前的值傳入這個對象
                if (!newObj[groupId]) {
                    newObj[groupId] = {}
                }
                newObj[groupId][keyName] = value
            }
            console.log(newObj,"newObj")
            return Object.values(newObj)
        }      
//如果存在這個不存在 就建立一個對象 否則将目前的值傳入這個對象
                if (!newObj[groupId]) {
                    newObj[groupId] = {}
                }
                newObj[groupId][keyName] = value      
前端項目實戰66-數組資料處理詳解