Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
120 views
in Technique[技术] by (71.8m points)

javascript - JS built in number sum function

Does JS have a number sum method? i.e., Math.sum(num1,num2) or something?

The reason is that I have 2 arrays of like 10 elements each, and I want to combine them into a single array by applying a custom function on each pair of elements (such as addition or multiplication). Would be much cleaner to have something like Math.sum instead of my own function

var a = [1,2,3];
var b = [4,5,6];
//custom function for each pair of numbers
var operations = [Math.sum, Math.multiply, Math.sum];
//apply the functions to get [5,10,9]

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Reply

0 votes
by (71.8m points)

you can use functional programming. Reduce method of arrays:

[1, 2, 3].reduce((accumulator, currentValue, currentIndex) => {
    \code...

    return acc
}, [])

Last [] means source, where you want to collect the new result. You always must return accumulator.

Here you have more information: https://developer.mozilla.org/enUS/docs/Web/JavaScript/Reference/Global_Objects/Array/Reduce


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...