这篇文章主要介绍了JavaScript纯函数是什么,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。
纯函数是指不依赖于且不改变它作用域之外的变量状态的函数。
纯函数的返回值只由它调用时的参数决定,它的执行不依赖于系统的状态(执行上下文)。
相同的输入参数,一定会得到相同的输出,也就是内部不含有会影响输出的随机变量。
不属于纯函数的特点:
更改文件系统
往数据库插入记录
发送一个 http 请求
可变数据
打印/log
获取用户输入
DOM 查询
访问系统状态
纯函数的作用:
可靠性:函数返回永远和预期一致
可缓存性:因为只要输入一样输出一定一样,因此可将输入作为key,输出作为值,使用对象缓存已经计算的结果
可移植性:因为没有外部依赖,所以移植到任何环境都可正确运行
可测试性:方便针对函数做单元测试
可并行性:对一些复杂计算,可以并行计算(例如使用nodejs多个子进程同时并行计算多个任务,提高计算速度)
应用场景:
工具函数最好使用纯函数
多平台使用的代码(nodejs、浏览器、微信小程序、native客户端等)
相对独立的功能
var a = 1; // 非纯函数 function sum(b) { return a + b; } // 非纯函数 function sum(b) { a = 2; return b; } // 非纯函数 function sum(b) { return b + Math.random(); } // 纯函数 function sum (b, c) { return b + c; }
感谢你能够认真阅读完这篇文章,希望小编分享的“JavaScript纯函数是什么”这篇文章对大家有帮助,同时也希望大家多多支持亿速云,关注亿速云行业资讯频道,更多相关知识等着你来学习!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。