广

JavaScript

  • IOS开发
  • android开发
  • PHP编程
  • JavaScript
  • ASP.NET
  • ASP编程
  • JSP编程
  • Java编程
  • 易语言
  • Ruby编程
  • Perl编程
  • AJAX
  • 正则表达式
  • C语言
  • 编程开发

    一家之言:谈谈JavaScript匿名函数

    2018-04-03 22:13:02 次阅读 稿源:互联网
    零七广告

    匿名函数的概念大家也许不会陌生,但是我相信下面的内容会打开一些新的思路。

    我们知道函数的定义方式有两种:

    1 function fn1(){alert(‘fn1 works’);}

    2 var fn2=function(){alert(‘fn2 works’);}

    这两种方式有什么区别?思考一下…

    1 第一种方式定义函数,函数声明过程在整个程序执行之前的预处理就完成了,所以只要处于同一个作用域,就可以访问到,即使在定义之前调用它也可以。

    2 第二章方式就是匿名函数,这种方式函数只能按照程序流程执行到定义的那一行代码才被声明,所以只能在定义之后调用它。

    举个例子

    var fn1;

    fn1();//报错

    fn1=function(){

    fn2();//fn2 works

    alert(‘fn1 works’);

    return false;

    function fn2(){

    alert(‘fn2 works’);

    }

    }

    fn1();//fn2 works + fn1 works

    我们看到fn2虽然处在return之后,程序流程并没有执行到它,但是它依然可以被使用,反之fn2只有在它被定义之后才会被正常执行。

    明白了这个,下面看一看匿名函数在递归里用处

    递归就是函数内部调用自己,举个例子

    function fn1(n){

    零七网部分新闻及文章转载自互联网,供读者交流和学习,若有涉及作者版权等问题请及时与我们联系,以便更正、删除或按规定办理。感谢所有提供资讯的网站,欢迎各类媒体与零七网进行文章共享合作。

    零七广告
    零七广告
    零七广告
    零七广告