在这篇文章中,我们将使用 JavaScript,它具有许多功能,使其适合函数式编程,同时又不受该范式的束缚。 函数式编程的核心原则 既然我们已经讨论了什么是函数式编程,那么我们来谈谈 FP 背后的核心原理。 纯 黎巴嫩电话号码表 函数 Learn to Code with JavaScript 我喜欢将函数视为机器——它们接受输入或参数,然后输出一些东西,即返回值。纯函数没有“副作用”或与函数输出无关的操作。一些潜在的副作用是打印一个值或使用 注销它,或者操作函数外部的变量。 这是一个不纯函数的示例纯函数的运行独立于函数外部的状态,因此它们不应依赖于全局状态或自身外部的变量。
在第一个示例中,我们使用number在函数外部创建的变量,并将其设置在函数内部。这违反了原则。如果您严重依赖不断变化的全局变量,您的代码将不可预测且难以跟踪。找出错误发生的位置以及值发生变化的原因将变得更加困难。相反,仅使用函数的本地输入、输出和变量可以更轻松地进行调试。 此外,函数应该遵循引用透明性,这意味着给定一定的输入,它们的输出将始终相同。在上面的函数中,如果我传递2给该函数,它将4始终返回。对于 API 调用或生成随机数而言,情况并非如此,举两个例子。给定相同的输入,输出可能会也可能不会返回。