JS-使用闭包实现add函数
来源:互联网 发布:c获取数组元素个数 编辑:程序博客网 时间:2024/06/06 20:06
无意中看到这样一个题目:利用闭包实现一个add函数,使得
add(1,2)=3,add(1)(2)=3。
以前看过闭包的概念,平时写js时也有意无意的用到过闭包,但是这个题目,一开始看到的时候还真是有点没思路。
不过静下心来,把问题进行了分解,之后就有了答案。
我的代码如下:
function add(x,y){ // 当实参的数量大于等于2时,则此时返回前两个参数之和 if (arguments.length >= 2) { return x + y; } // 当实参的数量为1时,此时返回一个带一个参数的匿名函数,当执行此匿名函数的时候返回外层和内部函数之和 else if (arguments.length == 1) { return function(z){ return x + z; } } // 如果没有传参数时,则直接返回undefined else if (arguments.length == 0) { return undefined; }}// 执行结果检验add(1,2); // 3add(1)(2); // 3add(1,2,3,4); // 3
1 0
- JS-使用闭包实现add函数
- js 使用闭包实现单例
- js函数闭包
- JS函数闭包
- [js] 函数 闭包
- js bind 函数 使用闭包保存执行上下文
- js bind()函数 使用闭包保存执行上下文
- Js bind 函数 使用闭包保存执行上下文
- js的闭包--匿名函数的使用
- JS闭包函数概念
- JS中的闭包函数
- js函数4-闭包
- js函数闭包案例
- js函数的闭包
- JS函数以及闭包
- js 匿名函数和闭包函数
- js闭包的用途(匿名自执行函数,缓存,实现封装,实现面向对象)
- JS闭包的使用
- Linux SPI总线和设备驱动架构之三:SPI控制器驱动
- 11.JUC 锁
- 各个数据结构的特点
- 以调用系统相机拍照为例了解Android 6.0运行时权限
- Activiti-工作流开发日记(一)
- JS-使用闭包实现add函数
- 第一行代码笔记 获取拍照照片和相册选取照片
- 创建一个1-100的数组,按顺序递增
- 领淘金币网站如何实现个人的研究
- Linux SPI总线和设备驱动架构之四:SPI数据传输的队列化
- Junit总结
- MFC 创建对话框,最大化取消边框【重绘最大化,最小化,关闭按钮下篇文章在去描述】
- Linux之学习笔记一
- Ubantu下Spark独立应用程序编程的Java编程应用