美文网首页
数组A,根据数组B的值排序

数组A,根据数组B的值排序

作者: 缓慢的蜗牛 | 来源:发表于2021-01-15 14:25 被阅读0次

    1.要求写程序实现:
    a)以B数组为参考,对A数组进行重新排序;
    b)节省空间,不能开辟新的数组。

    arrSort() {
        let arrA = [
            {id: 1, name: 'david'},
            {id: 2, name: 'alin'},
            {id: 3, name: 'ming'},
            {id: 4, name: 'lili'},
            {id: 5, name: 'amy'},
            {id: 6, name: 'amy6'}
        ];
        let arrB = [5, 1, 4, 3, 2];
        //创建第三数组
        let arrC = [];
        for (let i = 0; i < arrB.length; i++) {
            for (let x = 0; x < arrA.length; x++) {
                if (arrB[i] == arrA[x].id) {
                    arrC.push({
                        id: arrB[i],
                        name: arrA[x].name
                    })
                }
            }
        }
        console.log('arrC', arrC);
    
        // 在A数组与B数组相同给的情况下
        arrB.forEach(item => {
            arrA.find((each, index, arr) => {
                if (item === each.id) {
                    arr.splice(index, 1)
                    arrA.push(each)
                }
            })
        })
        console.log('arrA', arrA);
    },
    

    相关文章

      网友评论

          本文标题:数组A,根据数组B的值排序

          本文链接:https://www.haomeiwen.com/subject/vlcwaktx.html