程序实现对数据统计其出现的次数并按出现次数进行排序,[1, 4, 2, 1, 3, 2, 1, 4] 作为参数(参数可变)传入js方法中,控制台输出如下结果 1 出现了 3 次 2 出现了 2 次 4 出现了 2 次 3 出现了 1 次
时间: 2024-04-14 08:27:33 浏览: 24
你可以使用 JavaScript 中的对象来实现对数据统计并排序。可以按照以下步骤进行操作:
1. 创建一个空对象 `count`,用于存储每个数字的出现次数。
2. 遍历给定的数组,对于每个数字:
- 如果 `count` 对象中已经存在该数字,则将其次数加 1。
- 如果 `count` 对象中不存在该数字,则将其添加到 `count` 对象中,并将其次数设置为 1。
3. 将 `count` 对象转换为数组形式,并按照次数进行排序。
4. 遍历排序后的数组,输出每个数字和对应的出现次数。
下面是一个实现上述逻辑的示例代码:
```javascript
function countAndSort(arr) {
var count = {};
// 统计出现次数
for (var i = 0; i < arr.length; i++) {
var num = arr[i];
if (count[num]) {
count[num]++;
} else {
count[num] = 1;
}
}
// 将统计结果转换为数组形式并排序
var countsArray = [];
for (var key in count) {
countsArray.push({ num: key, count: count[key] });
}
countsArray.sort(function (a, b) {
return b.count - a.count;
});
// 输出结果
for (var j = 0; j < countsArray.length; j++) {
console.log(
countsArray[j].num + " 出现了 " + countsArray[j].count + " 次"
);
}
}
countAndSort([1, 4, 2, 1, 3, 2, 1, 4]);
```
运行以上代码,你会在控制台中看到输出结果:
```
1 出现了 3 次
4 出现了 2 次
2 出现了 2 次
3 出现了 1 次
```
希望这能帮助到你!如果还有其他问题,请随时问。