前端项目实战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

 

最后转换为数组对象 通过数据处理

posted @   前端导师歌谣  阅读(32)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
点击右上角即可分享
微信分享提示