欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

数组的处理1

程序员文章站 2022-04-03 08:52:40
...

简介

在开发中常会处理大量的数据,有时需要将数据处理为我们需要的格式,熟练的使用数组的各项操作,能极大节省开发效率。

例子

Demo1

将arrOrigin的数据处理成arrNew的数据格式。

arrOrigin

	let arrOrigin = [
        {
            msgList: [
                {
                    name: 'aa-1',
                    id: 'a-1'
                },
                {
                    name: 'aa-2',
                    id: 'a-1'
                }
            ],
            imsgSender: '11-11'
        },
        {
            msgList: [
                {
                    name: 'bb-1',
                    id: 'b-1'
                },
                {
                    name: 'bb-2',
                    id: 'b-1'
                }
            ],
            imsgSender: '22-22'
        },
    ];

arrNew

	let arrNew = [
        {
            msgList: [
                {
                    name: 'aa-1',
                    id: 'a-1',
                    imsgSender: '11-11'
                },
                {
                    name: 'aa-2',
                    id: 'a-1',
                    imsgSender: '11-11'
                }
            ],
        },
        {
            msgList: [
                {
                    name: 'bb-1',
                    id: 'b-1',
                    imsgSender: '22-22'
                },
                {
                    name: 'bb-2',
                    id: 'b-1',
                    imsgSender: '22-22'
                }
            ],
        },
    ]

实现方法

	let arrNewData = arrOrigin.map(item1 => {
        return {
            msgList: [
                ...item1.msgList.map(item2 => {
                    item2.imsgSender = item1.imsgSender
                    return item2;
                })
            ]
        }
    })
    console.log(arrNewData);

打印结果:
数组的处理1

Demo2

将arrOrigin的数据处理成arrNew的数据格式。

arrOrigin

 	let arrOrigin = [
        {
            msgList: [
                {
                    name: 'aa-1',
                    id: 'a-1'
                },
                {
                    name: 'aa-2',
                    id: 'a-1'
                }
            ],
            imsgSender: '11-11'
        },
        {
            msgList: [
                {
                    name: 'bb-1',
                    id: 'b-1'
                },
                {
                    name: 'bb-2',
                    id: 'b-1'
                }
            ],
            imsgSender: '22-22'
        },
    ]

arrNew

	let arrNew = [
        {
            name: 'aa-1',
            id: 'a-1',
            imsgSender: '11-11'
        },
        {
            name: 'aa-2',
            id: 'a-1',
            imsgSender: '11-11'
        },
        {
            name: 'bb-1',
            id: 'b-1',
            imsgSender: '22-22'
        },
        {
            name: 'bb-2',
            id: 'b-1',
            imsgSender: '22-22'
        }
    ]

实现方法

	let newArr = [];
    arrOrigin.map(item1 => {
        item1.msgList && item1.msgList.map(item2 => {
            newArr.push({
                ...item2,
                imsgSender: item1.imsgSender
            })
        })
    })
    console.log(newArr)

打印结果:
数组的处理1

Demo3

将arrOrigin的数据处理成arrNew的数据格式。

arrOrigin

	let arrOrigin = [
        {
            msgList: [
                {
                    name: 'aa-1',
                    id: 'a-1'
                },
                {
                    name: 'aa-2',
                    id: 'a-1'
                }
            ],
            imsgSender: '11-11'
        },
        {
            msgList: [
                {
                    name: 'bb-1',
                    id: 'b-1'
                },
                {
                    name: 'bb-2',
                    id: 'b-1'
                }
            ],
            imsgSender: '22-22'
        },
    ]

arrNew

	let arrNew = [
        {
            imsgSender: '11-11'
        },
        {
            imsgSender: '22-22'
        }
    ]

实现方法

	let arrNewData = arrOrigin.map(item1 => {
        return {
            imsgSender: item1.imsgSender
        }
    })
    console.log(arrNewData);

打印结果:
数组的处理1

后续未完,请继续关注,Thanks!☺