纯函数

作者: 张_何 | 来源:发表于2022-05-18 15:37 被阅读0次
纯函数:
  • 如果一个函数符合以下条件,那么这个函数被称为纯函数
  • 在相同的输入值时,必定得到相同的输出, 函数的输出和输入值以外的其他隐藏信息或状态无关,也和由 I/O 设备产生的外部输出无关
  • 该函数不会产生任何副作用,诸如"触发事件",使输出设备输出,或更改输出值以外物件的内容等
  • 不能调用Date.now(),或者 Math.random() 等不纯的函数
案例
  • 下面是一个纯函数
function sum(num1, num2) {
  return num1 + num2;
}
  • 下面不是一个纯函数, 因为 foo 是可以变的,相同的输入时,改变 foo 的值,输出是不同的,如果将 foo 用 const 定义,则是纯函数
let foo = 5;
function add(num){
  return num + foo;
}
纯函数的好处
  • 可以安心的写安心的用
  • 写的时候保证了函数的纯度,只是实现自己的业务逻辑即可,不需要关心传入的内容或者依赖其他的外部变量
  • 用的时候,确定输入内容不会被任意篡改,并且确定的输入,一定会有确定的输出

  • 在 React 中,所有 React 组件都必须像纯函数一样保护他们的 props 不被更改

相关文章

  • JS纯函数概念

    判断是否为纯函数的两个指标 纯函数和非纯函数的简单例子 1、纯函数 2、非纯函数 Redux中对使用纯函数redu...

  • 函数式编程(二)—— 纯函数

    目录 纯函数纯函数的概念Lodash——纯函数的代表体验Lodash纯函数的好处可缓存可测试并行处理副作用【函数式...

  • 4.0 C++远征:纯虚函数与抽象类

    3-1纯虚函数抽象类 [TOC] 一、纯虚函数 1.纯虚函数的定义 ​ 纯虚函数,没有函数体,同时定义时在函数...

  • 前端基础—带你理解什么是函数式编程

    框架总览 ? 引言 ? 什么是函数式编程? ? 函数是纯函数? 什么是纯函数? 函数的副作用? 使用纯函数的优点?...

  • 纯虚函数和抽象类

    纯虚函数和抽象类 概念 纯虚函数:没有函数体的虚函数。 抽象类:包含纯虚函数的类就称为抽象类。 纯虚函数就是在函数...

  • 纯函数

    Function VS Procedures 这里的纯函数指的是在函数式编程里面的纯函数。要理解好纯函数这个概念,...

  • 函数式编程(二)

    纯函数 函数式编程中的函数,指的就是纯函数,这也是整个函数式编程的核心纯函数:相同的输入永远会得到相同的输出,而且...

  • 纯函数

    纯函数概念 相同的输入总是返回相同的输出,函数式编程依赖于纯函数 lodash:纯函数功能库const _ = r...

  • Clojure学习笔记(三)——函数式编程

    函数式编程的理念 函数式编程使得代码的编写、阅读、测试和重用都更容易了。 纯函数 函数式程序构建于纯函数之上。纯函...

  • 什么是纯函数

    “纯函数”这个概念个人觉得适用与所有的语言。什么是纯函数,纯函数有两个重要的标准,违反任何一个都不是纯函数;1、函...

网友评论

      本文标题:纯函数

      本文链接:https://www.haomeiwen.com/subject/jzqdjrtx.html