关于Python'map()'函数的Javascript与Python

时间:2013-11-08 03:18:46

标签: javascript python functional-programming sml

在Python中有一个名为map的函数,允许您转到:map(someFunction, [x,y,z])并继续应用该函数的列表。是否有与此功能相当的javascript?

我现在只是学习Python,虽然我被告知javascript是函数式语言,但我可以看到我一直在编写一个非功能性的javascript风格。作为一般规则,javascript可以像Python一样有效地用作函数式语言吗?它是否有类似上面的map函数的技巧?

我刚刚开始了一个SML课程,我想知道我学到的内容也适用于javascript。

2 个答案:

答案 0 :(得分:10)

当然! JavaScript没有很多高阶函数内置,但map 内置的少数函数之一:

var numbers = [1, 2, 3];
var incrementedNumbers = numbers.map(function(n) { return n + 1 });
console.log(incrementedNumbers);  // => [2, 3, 4]

值得注意的是map并没有永远存在,所以一些相当旧的浏览器可能没有它,但是很容易自己实现垫片。

答案 1 :(得分:0)

你也可以使用underscore.js,它增加了大量只有4k大小的优秀功能主义者。

_.map([1, 2, 3], function(num){ return num * 3; });
//=> [3, 6, 9]