gpt4 book ai didi

JavaScript。如何比较输入数组

转载 作者:行者123 更新时间:2023-12-03 17:27:50 25 4
gpt4 key购买 nike

我已经被这个问题困扰了 3 天了...请有人帮助我。

Challenge 5
Construct a function intersection that compares input arrays and returns a new array with elements found in all of the inputs.

function intersection(arrayOfArrays) {

}

console.log(intersection([[5, 10, 15, 20], [15, 88, 1, 5, 7], [1, 10, 15, 5, 20]]));

// should log: [5, 15]

最佳答案

Reduce数组到 Map计数,以值作为键。 Spread映射到 entries .使用 Array.filter()在 Map 的条目上删除所有条目,其值不等于 arrayOfArrays lenth。使用 Array.map() 从条目中提取原始数字:

function intersection(arrayOfArrays) {
return [...arrayOfArrays.reduce((r, s) => {
s.forEach((n) => r.set(n, (r.get(n) || 0) + 1));

return r;
}, new Map())]
.filter(([k, v]) => v === arrayOfArrays.length)
.map(([k]) => k);
}

console.log(intersection([[5, 10, 15, 20], [15, 88, 1, 5, 7], [1, 10, 15, 5, 20]]));

关于JavaScript。如何比较输入数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50298542/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com