根据指定条件对list中元素进行排序

	// 定义一个正向排序的函数
    const sortBy = (arr, k) => arr.concat().sort((a, b) => (a[k] > b[k] ? 1 : a[k] < b[k] ? -1 : 0));

    // 准备一个人员列表
    const peopleList = [
        { name: 'Foo', age: 42 },
        { name: 'Bar', age: 24 },
        { name: 'Fuzz', age: 36 },
        { name: 'Baz', age: 32 },
    ];

    // ⭕调用排序函数进行正向排序
    const sortedList = sortBy(peopleList, 'age');
    console.log(sortedList);
    /*
        [
            {
                "name": "Bar",
                "age": 24
            },
            {
                "name": "Baz",
                "age": 32
            },
            {
                "name": "Fuzz",
                "age": 36
            },
            {
                "name": "Foo",
                "age": 42
            }
        ]
    */
    
    // ⭕如果需要逆向排序的话,只需要加一个 .reverse()反转list中的所有元素
    const sortedListReverse = sortBy(peopleList, 'age').reverse();
    console.log(sortedListReverse);
    /*
        [
            {
                "name": "Foo",
                "age": 42
            },
            {
                "name": "Fuzz",
                "age": 36
            },
            {
                "name": "Baz",
                "age": 32
            },
            {
                "name": "Bar",
                "age": 24
            }
        ]
    */
上一篇:[JS] 聊一聊File对象


下一篇:手摸手带你实现call函数,重在思路