极客时间返利平台,你可以在上边通过山月的链接购买课程,并添加我的微信 (shanyue94) 领取返现。

# 什么是纯函数

Issue

欢迎在 Gtihub Issue 中回答此问题: Issue 607 (opens new window)

  1. 输出仅由输入决定,每一个固定的输入总是返回相同的输出
  2. 不产生副作用
function push(list, x) {
  list.push(x);
  return list;
}

const l = [];
push(l, 3);

Author

回答者: Asarua (opens new window)

引用透明

他只使用或者操作输入的参数 相同参数输出相同结果 不能存在语义化的副作用

Author

回答者: Vi-jay (opens new window)

  1. 输出仅由输入决定,每一个固定的输入总是返回相同的输出
  2. 不产生副作用
function push(list, x) {
  list.push(x);
  return list;
}

const l = [];
push(l, 3);

这应该是一个错误的例子吧 这个函数改变了 list 本身 纯函数应该是不改变外部数据的

Last Updated: 6/26/2022, 10:48:10 AM