您的位置:首页 > Web前端 > javascript > 正文

js函数声明和函数表达式的区别

更多 时间:2017-2-19 类别:Web前端 浏览量:557

js函数声明和函数表达式的区别

js函数声明和函数表达式的区别

一、函数声明

1、例如

  •  
  • 
    function sum1(n1,n2){
        return n1+n2;
      };
    
    			
  • 2、对于函数声明,js解析器会优先读取,确保在所有代码执行之前声明已经被解析

    3、函数声明在JS解析时进行函数提升,因此在同一个作用域内,不管函数声明在哪里定义,该函数都可以进行调用。

     

    二、函数表达式

    1、例如

  •  
  • 
    var sum2=function(n1,n2){
        return n1+n2;
    };
    
    		
  • 2、在JS运行时确定,并且在表达式赋值完成后,该函数才能调用。

    3、函数表达式,如同定义其它基本类型的变量一样,只在执行到某一句时也会对其进行解析

     

    三、通过实例说明函数声明和函数表达式的区别

    当使用函数声明的形式来定义函数时,可将调用语句写在函数声明之前,而后者,这样做的话会报错。

  •  
  • 
    //代码一:
    a(1);    //执行这个会报错
    var a = function(index){
        alert(index);
    }
    a(2);    //执行这个不会报错
     
    //代码二:
    a(1);    //执行这个不会报错
    function a(index){
        alert(index);
    }
    a(2);    //执行这个不会报错
    
    		
  •  

    标签:javascript
    您可能感兴趣