将数组进行排序,可以是普通数据 可以json数组

 function sortArray(arr, key, isDesc = false) {

            if (!arr) {

                return false;

            }

            let isArray = arr instanceof Array;

            if (!isArray) {

                return false;

            }

            if (arr.length <= 1) {

                return arr;

            }

            let temp = JSON.parse(JSON.stringify(arr));

            if (key) {

                return temp.sort((a, b) => {

                    if (isDesc) {

                        return b[key] - a[key];

                    } else {

                        return a[key] - b[key];

                    }

                });

            } else {

                return temp.sort((a, b) => {

                    if (isDesc) {

                        return b - a;

                    } else {

                        return a - b;

                    }

                });

            }

  }

用途: 给数组排序

 参数:arr, key, isDesc

    * arr 可以是普通数据  可以json数组

    * key -> 有key就是json数组,没有key就是普通数组排序

    * desc -> true:从大到小  false -> 从小到大(默认),

例子1:

 let arr = [36,74,21,7,367,16,86,85,94,241];

sortArray(arr) // [7, 16, 21, 36, 74, 85, 86, 94, 241, 367 ]

sortArray(arr,'',true)  // [367, 241, 94, 86, 85, 74, 36, 21, 16, 7]

例子2:

  let jsonarr = [

            {name:'小明',age:19,score:29},

            {name:'花花',age:29,score:8},

            {name:'兰兰',age:45,score:12},

            {name:'妮妮',age:24,score:32},

            {name:'巴巴',age:32,score:65},

            {name:'艾艾',age:4,score:89},

            {name:'赫赫',age:25,score:38},

        ];

sortArray(jsonarr,'score') 


sortArray(jsonarr,'age') 

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容