使用闭包的方式实现一个累加函数 addNum,参数为 number 类型,每次返回的结果 = 上一次计算的值 传入的值,如: addNum(10); //10 addNum(12); //22 addNum(30); //52

写法一

 1 function sum(numberOne) {
 2               var count = numberOne;
 3               return function by(numberTwo) {
 4                 if (numberTwo === undefined) {
 5                   return count;
 6                 } else {
 7                   count  = numberTwo;
 8                   return by;
 9                 }
10               }
11         }
12         console.log(sum(10)(12)(30)());

写法二

 1 function sum(x) {
 2             var result = 0;
 3             for(var i=0;i<arguments.length;i  ){
 4                 result  = arguments[i];
 5             }
 6             var foo = function(){
 7                 for(var i=0;i<arguments.length;i  ){
 8                     result  = arguments[i];
 9                 }
10                 return foo;
11             };
12             foo.toString = function(){
13                 return result;
14             };
15             return foo;
16         }
17
18         console.log( sum(10)(12)(30));

写法三

 1 function sum (n) {
 2
 3             var v = function (x) {
 4                 return sum (n   x);
 5             };
 6
 7             v.valueOf = v.toString = function () {
 8                 return n;
 9             };
10
11             return v;
12         }
13
14         console.log( sum(10)(12)(30));

更多专业前端知识,请上 【猿2048】www.mk2048.com

使用闭包的方式实现一个累加函数 addNum相关推荐

  1. 函数闭包的方式实现lua面向对象

    前文http://blog.csdn.net/s_xing/article/details/19575059 说到了怎样实现lua的面向对象,但是有个小问题就是这种方式不能实现封装,,所有的属性都是共 ...

  2. 创建一个Python脚本,实现以下功能。(1)定义一个元组t1=(1,2,R,py,Matlab‘)和一个空列表1ist1。(2)以while循环的方式,用append()函数依次向listl中

    创建一个Python脚本,实现以下功能. (1)定义一个元组t1=(1,2,R,py,Matlab')和一个空列表1ist1. (2)以while循环的方式,用append()函数依次向listl中添 ...

  3. python定义一个求和函数_Python定义函数实现累计求和操作

    一.使用三种方法实现0-n累加求和 定义函数分别使用while循环.for循环.递归函数实现对0-n的累加求和 1.使用while循环 定义一个累加求和函数sum1(n),函数代码如下: 2.使用 f ...

  4. 【C 语言】文件操作 ( 按照单个字符的方式读写文件 | fgetc 函数 | fputc 函数 )

    文章目录 一.文件名路径设置 二.文件打开方式 三.fputc 函数 | 按照字符方式写文件 1.fputc 函数 2.代码示例 四.fgetc 函数 | 按照字符方式读文件 1.fgetc 函数 2 ...

  5. 实现一个bind函数

    目前的打算还是继续深入前端基础知识,所以打算从polyfill开始做起. bind函数 bind函数最常见的用法是绑定函数的上下文,比如在setTimeout中的this一般都是指向window,如果 ...

  6. python函数的组成要素_写好一个Python函数的六要素

    Python 虽然好用,但用好真的很难.尤其是函数部分,只要写不好,后面的一连串人都会遭殃.看又看不懂,测试起来也麻烦,维护又维护不动,真是让人头疼. 那怎么写好一个 Python 函数呢?<W ...

  7. Scroll View 控件以Thumbnail的方式显示一个目录的全部图片,相似图片浏览器

    MAC : XCode -> Scroll View 控件以Thumbnail的方式显示一个目录的全部图片,类似图片浏览器 STEP1:将两个目录复制到project里面ImageBrowser ...

  8. C语言累加函数代码,ARM汇编程序---通过ARM汇编调用C语言函数实现累加

    在C语言中定义实现一个累加的函数,参数是累加的最大值,从1加到此值.下面是代码: 汇编代码:其中注意开始的参数的定义要紧靠前面,负责无法读出,其中要将C语言函数导入:IMPORT+函数名,并将你定义的 ...

  9. linux底层把值传给上层,Android上层如何调用一个底层函数

    Android上层如何调用一个底层函数 1. 背景 本文讲的是调用流程,如何找到相应代码位置,更多的是一种分析代码的方式. 此处将从ZygoteInit调用Zygote.forkSystemServe ...

最新文章

  1. iOS项目的本地化处理(多国语言)
  2. qtablewidget 数据量大效率很低_让大牛带你走进大数据分析:R基础及应用的潮流尖端,享受RHadoop...
  3. boost::equal相关的测试程序
  4. hosts文件 请检查文件是否在别的程序中打开
  5. HDU 6889 Graph Theory Class(CCPC网络赛)
  6. UI设计素材|切换动效,打破界面沉闷感
  7. php百度鹰眼,Android 百度鹰眼里程计算简单实列
  8. 【java】 java 高并发解决方案和高负载优化方法
  9. 我是如何将博客转成PDF的
  10. 【Spring】SpringAOP切面类
  11. IDEACPU占用100%_卡顿 解决办法
  12. android6.0连接WIFI后显示“已连接,但无法访问互联网”实际可以上网
  13. Java总结IO之总集篇
  14. 不要在学习启动管理器和元编程上浪费时间
  15. java模拟器ios版安装失败,iOS 在模拟器上安装 Debug 调试包(.app)
  16. Spring5的IOC容器
  17. RFID技术如何让图书馆实现自助借还,自助盘点
  18. 前端css让div浮动,Web前端篇:css浮动
  19. c++ 鼠标切换形状
  20. ap接口 php_cos-php-sdk-v5接口文档

热门文章

  1. 【自适应盲均衡7】分数间隔的复数常模算法(FSE-CMA)
  2. 约束,MySQL约束,非空默认值,主键外键唯一自增,完整详细可收藏
  3. python中sorted的用法append_Python中高阶函数sorted()用法
  4. 【强化学习】一文带你理清强化学习
  5. php gridview,PHP编程:yii2-GridView在开发中常用的功能及技巧总结
  6. 最速下降法matlab全局最小值_梯度下降概念
  7. java字符串构造函数的应用_StringTokenizer类的使用
  8. 【洛谷P2743】【poj 1743】[USACO5.1]乐曲主题Musical Themes
  9. Java高阶语法---final
  10. Java开发笔记(二十三)数组工具Arrays