当前位置: 首页 / 技术干货 / 正文
好程序员web前端培训分享前端javascript练习题之闭包案例

2019-11-28

HTML5 html5培训 web前端培训 好程序员

  好程序员web前端培训分享前端javascript练习题闭包案例编写一个求和函数sum,使输入sum(2)(3)或输入sum(2,3),输出结果相同

可以传入多个参数

function sum(){    

    var num = arguments[0];    

    if(arguments.length==1){       

    return function(sec){           

        return num+sec;       

            }    

        }else{        

        var num = 0;        

        for(var i = 0;i<arguments.length;i++){           

            num = num + arguments[i];        

            }   

            return num;    

        }

    }

递归----深拷贝

function deepCopy(obj){

                if(Array.isArray(obj)){

                    var newobj=[];

                }else{

                    var newobj={};

                }

                

                for(var i in obj){

                    if(typeof obj[i]=="object"){

                     newobj[i]=deepCopy(obj[i]);

                        

                    }else{

                        newobj[i]=obj[i];

                    }

                }

                return newobj;

            }

 

定时器案例

循环打印5,6,7,8,9,10,9,8,7,6,5,6,7…循环输出

var a=4;

        var b=1;

        setInterval(function(){

            a=a+b;

            if(a==10){

                b=-1;

            }else if(a==5){

                b=1;

            }

            console.log(a);

        },500);

 

好程序员公众号

  • · 剖析行业发展趋势
  • · 汇聚企业项目源码

好程序员开班动态

More+
  • HTML5大前端 <高端班>

    开班时间:2021-04-12(深圳)

    开班盛况

    开班时间:2021-05-17(北京)

    开班盛况
  • 大数据+人工智能 <高端班>

    开班时间:2021-03-22(杭州)

    开班盛况

    开班时间:2021-04-26(北京)

    开班盛况
  • JavaEE分布式开发 <高端班>

    开班时间:2021-05-10(北京)

    开班盛况

    开班时间:2021-02-22(北京)

    开班盛况
  • Python人工智能+数据分析 <高端班>

    开班时间:2021-07-12(北京)

    预约报名

    开班时间:2020-09-21(上海)

    开班盛况
  • 云计算开发 <高端班>

    开班时间:2021-07-12(北京)

    预约报名

    开班时间:2019-07-22(北京)

    开班盛况
IT培训IT培训
在线咨询
IT培训IT培训
试听
IT培训IT培训
入学教程
IT培训IT培训
立即报名
IT培训

Copyright 2011-2023 北京千锋互联科技有限公司 .All Right 京ICP备12003911号-5 京公网安备 11010802035720号