js数组去重并分别统计个数生成数组对象
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="ie=edge"> <title>Document</title> </head> <body> </body> <script> function getCount(arr) { var obj = {}, k, arr1 = []; for (var i = 0, len = arr.length; i < len; i++) { k = arr[i]; if (obj[k]) obj[k]++; else obj[k] = 1; } console.log(obj) //保存结果{el-'元素',count-出现次数} for (var o in obj) { arr1.push({ el: o, count: obj[o] }); } console.log(arr1); } getCount([4, 2, 2, 3, 1]) </script> </html>