如何正确运用JavaScript中的纯函数进行函数式编程?
- 内容介绍
- 文章标签
- 相关推荐
本文共计1159个文字,预计阅读时间需要5分钟。
本例介绍了JavaScript函数式编程(Functional Programming)纯函数用法。分享给家长参考,内容如下:
函数式编程鼓励我们多创新,构建纯函数(pure functions)。纯函数只依赖你传递给它的东西,不依赖于外部状态。
本文实例讲述了JavaScript函数式编程(Functional Programming)纯函数用法。分享给大家供大家参考,具体如下:
函数式编程鼓励我们多创建纯函数(pure functions),纯函数只依赖你交给它的东西,不使用任何函数以外的东西,也不会影响到函数以外的东西。跟纯函数对应的就是不纯函数(impure functions),也就是不纯函数可能会使用函数以外的东西,比如使用了一个全局变量。也可能会影响到函数以外的东西,比如改变了一个全局变量的值。
多使用纯属函数是因为它更可靠一些,也没什么副作用(side effects)。你交给它同样的值,它每次都会给你输出同样的结果,这种特质叫所指透明(Referential transparency) 。这会让程序更稳定,也更容易测试。
副作用
纯函数没副作用,有副作用的函数都不纯。我吃了一片感冒药,是要治我的感冒,但副作用是它让我想睡觉。函数的副作用多数表现为函数依赖或者改变了它以外的东西。
看个例子:
let name = 'longzhoufeng' const greet = () => { console.log(`hello, ${name}`) }
greet 不是纯函数,因为这个函数依赖函数以外的东西,这里就是全局作用域下的 name。
本文共计1159个文字,预计阅读时间需要5分钟。
本例介绍了JavaScript函数式编程(Functional Programming)纯函数用法。分享给家长参考,内容如下:
函数式编程鼓励我们多创新,构建纯函数(pure functions)。纯函数只依赖你传递给它的东西,不依赖于外部状态。
本文实例讲述了JavaScript函数式编程(Functional Programming)纯函数用法。分享给大家供大家参考,具体如下:
函数式编程鼓励我们多创建纯函数(pure functions),纯函数只依赖你交给它的东西,不使用任何函数以外的东西,也不会影响到函数以外的东西。跟纯函数对应的就是不纯函数(impure functions),也就是不纯函数可能会使用函数以外的东西,比如使用了一个全局变量。也可能会影响到函数以外的东西,比如改变了一个全局变量的值。
多使用纯属函数是因为它更可靠一些,也没什么副作用(side effects)。你交给它同样的值,它每次都会给你输出同样的结果,这种特质叫所指透明(Referential transparency) 。这会让程序更稳定,也更容易测试。
副作用
纯函数没副作用,有副作用的函数都不纯。我吃了一片感冒药,是要治我的感冒,但副作用是它让我想睡觉。函数的副作用多数表现为函数依赖或者改变了它以外的东西。
看个例子:
let name = 'longzhoufeng' const greet = () => { console.log(`hello, ${name}`) }
greet 不是纯函数,因为这个函数依赖函数以外的东西,这里就是全局作用域下的 name。

