JAVASCRIPT作为功能编程介绍

标记为
JavaScript的
我们已经看到JavaScript可以是一种伟大的语言。特别是那些正在学习功能编程的人。

在过去的几个月里,我看到了功能性编程,你也可以做到。我将在过去几个月内向您展示一些在JavaScript / React / Redux中看到的功能编程概念。

如果您使用React和Redux,您已经完成了一些功能性编程,甚至你甚至都不知道。

是的,你可以用JavaScript做FP
其实,你可以用任何语言做FP。当然,最好使用纯功能语言,因为你将被迫使用功能特性。

我们可以在互联网上找到很多关于如何使用JavaScript的博客文章。还有一个令人敬畏的JavaScript功能编程列表。

这不会是另一个博客文章,教你如何在JavaScript中进行FP,但是一篇博客文章说,JavaScript在过去几年中帮助我看到了什么。

纯功能
纯函数使功能编程发生。你可能知道什么功能和使用方法,但什么是纯功能?

每当使用给定的参数调用时,纯函数将始终返回相同的值。任何外部状态都不会改变。考虑数学函数 - x^2不关心外部状态,对吧?

如果您正在使用React,并且使用无状态组件,则使用纯函数。

我们来看看“你好世界”的反应:

function HelloWorld() {
  return <div>Hello, world!</div>
}

React已经介绍了我的纯功能,也为很多其他人这样做了。

不变性
不变性是使功能编程发生的另一件事。我们可以使用ImmutableJS来创建不变的数据结构。我正在使用Immutable,特别是当我与Redux一起编写React代码时。我的状态是不变的

ImmutableJS向我介绍了现实世界中不可变的使用。

作为组件的功能
React介绍给我的功能是组件。组合性。我们倾向于将代码分解成小的函数或组件,这是我们可以用React做的事情之一。这也可以帮助你避免重复自己。

时间: 2024-12-22 06:53:45

JAVASCRIPT作为功能编程介绍的相关文章

JavaScript中的DSL元编程介绍

 这篇文章主要介绍了JavaScript中的DSL元编程介绍,本文讲解了JavaScript元编程.JavaScript eval.JavaScript new Function()等内容,需要的朋友可以参考下     在看JavaScript Template源码的时候,发现有一个很有意思的用法用来生成函数,想到这不就是元编程么? JavaScript 元编程   代码如下: 元编程(Metaprogramming)是指某类计算机程序的编写,这类计算机程序编写或者操纵其他程序(或者自身)作为它

JavaScript面对国际化编程时的一些建议

  这篇文章主要介绍了JavaScript面对国际化编程时的一些建议,包括时区与语言编码等一些值得注意的问题,需要的朋友可以参考下 什么是国际化? 国际化(Internationalization的缩写是i18n--i,中间18个字符,n)是将软件处理的能让来自各种地方使用各种语言的用户更简单使用的一个过程.假定某个用户来自某个地方说某种语言,他可能不经意间就得到一些错误提示.尤其是你甚至都没有做这种假设. ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17

对JavaScript客户端应用编程的一些建议

  这篇文章主要介绍了对JavaScript客户端应用编程的一些建议,主要针对MVC框架框架的一些相关使用问题,需要的朋友可以参考下 你可能注意到了,最近的一段时间越来越多的Web应用有变复杂的趋势,重心从服务端慢慢向着客户端转移. 这是个正常的趋势么?我不知道.支持和反对者的讨论就像是在讨论复活者和圣诞节哪一个更好一样; 很难说哪一方观点就是完全正确的.因此,本文不会探讨究竟哪一方是对的,不过我还是试图解释一下使用大家所熟知的面向对象编程也许可以成功的解决客户端编程中存在的一些问题. 不太规范

JavaScript分页功能的实现方法

 JavaScript分页功能的实现方法  这篇文章主要介绍了JavaScript分页功能的实现方法,涉及javascript操作分页的相关技巧,需要的朋友可以参考下     本文实例讲述了JavaScript分页功能的实现方法.分享给大家供大家参考.具体实现方法如下: ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 4

JavaScript中的闭包介绍

 这篇文章主要介绍了JavaScript中的闭包介绍,本文讲解了Javacript 闭包.Javscript 闭包与this.Javscript 闭包与读写变量等内容,需要的朋友可以参考下     所谓的闭包应该是指: 内部函数读取当前函数以外的变量,即创建时所处的上下文环境. 代码如下: function hello(){ var char = "hello,world"; function print(){ console.log(char); }; return print();

为什么用 JavaScript 学习函数式编程?(软件编写)(第二部分)

本文讲的是为什么用 JavaScript 学习函数式编程?(软件编写)(第二部分), 烟雾的方块艺术 -MattysFlicks -(CC BY 2.0) 注意:这是从基础学习函数式编程和使用 JavaScript ES6+ 撰写软件的第二部分.保持关注,接下来还有很多!第一篇 | 第三篇 > 忘掉你认为知道的关于 JavaScript 的一切,用初学者的眼光去看待它.为了帮助你做到这一点,我们将会从头复习一下 JavaScript 的基础,就像你与其尚未谋面一样.如果你是初学者,那你就很幸运了

[译] JavaScript 的函数式编程是一种反模式

本文讲的是[译] JavaScript 的函数式编程是一种反模式, 原文地址:Functional programming in JavaScript is an antipattern 原文作者:Alex Dixon 译文出自:掘金翻译计划 本文永久链接:github.com/xitu/gold-m- 译者:sunui 校对者:LeviDing.xekri 其实 Clojure 更简单些 写了几个月 Clojure 之后我再次开始写 JavaScript.就在我试着写一些很普通的东西的时候,我

javascript常用功能汇总_javascript技巧

1.javascript的数组API: //定义数组 var pageIds = new Array(); pageIds.push('A'); 数组长度 pageIds.length; //shift:删除原数组第一项,并返回删除元素的值:如果数组为空则返回undefined var a = [1,2,3,4,5]; var b = a.shift(); //a:[2,3,4,5] b:1 //unshift:将参数添加到原数组开头,并返回数组的长度 var a = [1,2,3,4,5];

《JavaScript数据可视化编程》—— 第1章 图像数据1.1 创建基础的柱状图

第1章 图像数据 JavaScript数据可视化编程在很多人的印象中,数据可视化图形是一些非常酷炫复杂.充满科幻设计感的图形.这种看法其实存在误区.实际上,建立一个有效的数据可视化模型并不需要特别深厚的设计功底和复杂的编程技巧,如果你一直牢记着数据可视化的目的是帮助人们更好地理解数据,那么你就会认同,在进行数据可视化的过程中最需要注意的,恰恰是"简单"二字.那些看似简单基础.随处可见的图表及其所传达的信息,往往最容易为人们所理解和消化. 因为用户已经熟悉了各式各样的常规图表,如柱状图.