javascript - 如何返回一个显示每个唯一值出现总数的对象?

标签 javascript

大家好,我是 JavaScript 新手,希望你们中的任何人都能帮助我弄清楚。谢谢

我的问题是如何编写一个函数,该函数需要一个可以包含字符串和/或数字的数组(以及有限级别的字符串和/或数字嵌套数组),并返回一个显示字符串总数的对象。每个唯一值的出现次数。

function functionName() {

 const inputArray = [ 2, 5, 2, 'a', [ 'd', 5, 2, ['b', 1], 0 ], 'A', 5, 'b', 2, 'd' ];
 const outputResult = functionName(inputArray);
}

对象中的键是在数组中找到的唯一值,每个键的值是每个唯一键出现的次数

我想要的预期结果是:

 {
'2': 4,
'5': 3,
'a': 1,
'd': 2,
'b': 2,
'1': 1,
'0': 1,
'A': 1,
 }

最佳答案

你可以尝试:

const inputArray = [ 2, 5, 2, 'a', [ 'd', 5, 2, ['b', 1], 0 ], 'A', 5, 'b', 2, 'd' ];

const result = inputArray.flat(Infinity).reduce((acc, item) => (acc[item] = (acc[item] || 0) + 1, acc), {})

console.log(result)

关于javascript - 如何返回一个显示每个唯一值出现总数的对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62368250/

相关文章:

javascript - <input type ="hidden">和全局JS变量有什么区别

javascript - 为什么在 javascript 中, `2 << -1` 是零而不是一?

javascript - 检测到网站上的奇怪注册模式

javascript - meteor 页面加载后单独加载部分页面

javascript - 取消订阅后再次激活observable

javascript - 如何通过关键词获取最相关的问题

javascript - 使用动态脚本加载 JSON 数据 - 跨域 - CORS 不可用

javascript - 使用作为参数传递的函数

javascript - AngularJS:带有链接的表格

javascript - iframe 内的脚本不工作