【发布时间】:2021-02-24 05:38:16
【问题描述】:
我需要知道如何解决我从网上看到的这个问题。
对于给定的数组,我需要找到所有唯一元素并且减去 10。然后对所有元素进行求和。然后将每个数组值乘以这个数字(求和)。
我假设我可以使用 reduce 进行求和并使用 map 进行乘法,但我真的不知道它是如何工作的,我被卡住了。也不容易找到独特的元素。
我有输入值和预期值。
Input, expected
[1], [1]
[1, 1, 2], [2, 2, 4]
[0, 0, 1, 2, 1], [0, 0, 2, 4, 2]
[0, 10, 1, 1, 20, 3, 40, 3], [0, 0, 0, 0, 0, 0, 0, 0]
[0, 1, 1, 2, 4, 11], [0, 6, 6, 12, 24, 66]
[10, 1, 1, 1], [0, 0, 0, 0]
[10, 11, 1, 2, 3, 4], [100, 110, 10, 20, 30, 40]
我正在尝试一些事情,但主要问题是我不理解我认为的语法。我知道如何通过循环来解决这个迭代问题,但我想通过高阶函数来学习。
这不是学校项目,我正在学习这个,所以我不需要解决方案,我想了解,谢谢。
我尝试的是像这样应用地图。并且还可以过滤和减少
var input = [0, 0, 1, 2, 1]
var output = [0, 0, 2, 4, 2]
var map, reduce, filter;
map = input.map(multiplyFunction(first,second))
function multiplyFunction(first,second){
return first*second
}
【问题讨论】:
-
我建议从文档和他们拥有的示例开始:
Array#map和Array#reduce。尝试一下,遇到困难时再回来。 -
“总结”不是一个词。你的意思是“求和”吗?
-
这个"和负10。"是什么意思?
-
我猜他们的意思是“小于 10”。
-
如果您发布您尝试过的内容,我们可以帮助您修复它。但除此之外,这个问题将被关闭,因为没有具体的问题。
标签: javascript node.js arrays