javascript - 在数组中找到相反的数字
问题描述
我试图在数组中找到相反的数字。
假设我们有这个数组:[1,3,4,-3]
我想要的是:
{ '1': 1, '3': 2, '4': 1 } // as we have two 3
我尝试的是:
const arr = [1,3,4,-3]
let holder = {}
arr.map(a => {
holder[a] = (holder[a] ||0)+1
})
console.log(holder)
知道我怎样才能做到这一点吗?
解决方案
不太确定这是否真的是您想要实现的目标。如果是这样,您可以使用reduce
. 请检查:
const arr = [1, 3, 4, -3];
const obj = arr.reduce((acc, cur) => ({
...acc,
[Math.abs(cur)]: (acc[Math.abs(cur)] || 0) + 1,
}), {});
console.log(obj);
推荐阅读
- reactjs - 我如何使我的仪表板受保护组件(只有注册用户才能访问)。以及仪表板导航的工作原理
- parallel-processing - 使用 Ray 在 Ubuntu 上进行并行化
- c - Verifiable-C 支持 C 的哪个子集?
- postgresql - 在 Postgres 的所有表和所有列中搜索字符串
- networking - 负载均衡器如何检查后端服务器的负载以进行智能请求路由?
- docker - Nginx 400 错误请求
- pine-script - 如何以 1.5:1 RR 比率进行 SL & TP
- php - PHP mPDF - 如何使用 CSS 样式为部分页脚创建 HTML 页脚?
- flutter - 如何自动重启data rest api,编程语言flutter
- sql - SQL / Presto SQL:在同一列中按组求和