javascript - 使用 JavaScript 进行函数式 Web 编程的一个很好的例子是什么?

标签 javascript functional-programming

我现在每天都在做 javascript。我来自 OO 背景,我接触过的大部分代码都有些过程化/OO 风格。我正在寻找能够以实用方式解决或多或少典型 Web 编程任务的好示例。

我对任何看起来像功能的任意示例不感兴趣。我正在寻找一个示例,该示例可以展示如何使用函数功能比使用其他方法更好地解决问题。我知道这有点依赖主观/风格,但不要让自己(我自己)觉得太难。

最佳答案

首先,您想了解函数式编程的含义;也就是说,什么是核心概念以及该语言如何让您坚持这些概念。对于 OOP,核心概念是封装、继承和多态性(或者对于 smalltalkers 来说只是消息传递)。对于 FP,中心原则是 referential transparency (这意味着无国籍)。尝试使用不支持功能特性(例如,作为一流对象的功能)的语言以功能风格编程,即使不是不可能,也会很尴尬。与使用不具有 OOP 功能的语言的 OOP 编程相同。

幸运的是 Javascript 是多范式的并且支持两者。与其寻找“功能性”代码示例,不如考虑确保引用透明性的所有方式,这将自然导致使用语言的 FP 功能,例如 lambda、闭包、高阶函数(例如 map、reduce、filter)、柯里化(Currying)等。

说真的,这并不意味着没有答案。我真的认为这是实现它的最有动力和最有效的方法。

也就是说,这里有一些很有帮助的链接。

  1. FP programming in JavaScript

  2. Mostly adequate guide to FP

关于javascript - 使用 JavaScript 进行函数式 Web 编程的一个很好的例子是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/831967/

相关文章:

javascript - 如何迭代 ES6/2015 类实例的属性

javascript - 我的应用程序没有在按钮上关闭,electron.js

javascript - 如何使用 JavaScript 从左到右移动元素,返回并重复?

javascript - 使用地理编码器使地址成为谷歌地图的中心

haskell - Haskell 问题有标准库解决方案吗?

javascript - 基于 Angular 路线路径动画路线(v2 +)

scala - Scala 中类似 Haskell 的类型约束 trait 实现(?)

haskell - 在 Haskell 中对自定义列表使用反向

F#:对复杂列表进行分组

algorithm - 图问题的函数/流编程 "Reconstruct Itinerary"