JS 递归实现一个函数

发布于 2022-09-02 12:23:15 字数 1355 浏览 12 评论 0

已知:

var data = [
    {
        id: 0,
        title: 'IT'
    },
    {
        id: 1,
        title: 'GG'
    }
]

var data2 = [
    [
        {
            id: '1',
            title: '1111'
        },
        {
            id: '2',
            title: '22222'
        }
    ],
    [
        {
            id: '3',
            title: '33333'
        },
        {
            id: '4',
            title: '4444'
        }
    ]
]

怎么样实现一个 dealDate 函数,能够让data和data2变成:

var data = [
    {
        id: 0,
        title: 'IT',
        value: 0,
        text: 'IT'
    },
    {
        id: 1,
        title: 'GG',
        value: 1,
        text: 'GG'
    }
]

var data2 = [
    [
        {
            id: '1',
            title: '1111',
            value: 1,
            text: '11111'
        },
        {
            id: '2',
            title: '22222',
            value: 2,
            text: '22222'
        }
    ],
    [
        {
            id: '3',
            title: '33333',
            value: 3,
            text: '333333'
        },
        {
            id: '4',
            title: '4444',
            value: 4,
            text: '444444'
        }
    ]
]

就是每一个json的idtitle变成 valuetext

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

神仙妹妹 2022-09-09 12:23:15
var dealData = function (data) {
    for (var i = 0, len = data.length; i < len; i++) {
        if ('[object Array]' === Object.prototype.toString.call(data[i])) {
            dealData(data[i])
        } else {
            data[i].value = data[i].id
            data[i].text  = data[i].title
        }
    }
}
dealData(data2)

console.log(data2)
// 没做格式校验
独闯女儿国 2022-09-09 12:23:15
for(var x in data){
        data[x].value = data[x].id;
        data[x].text  = data[x].title;
    }

不知道你是否需要这样的方法

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文