美文网首页
函数表达式和函数声明

函数表达式和函数声明

作者: daisx | 来源:发表于2017-10-25 16:35 被阅读0次

    定义函数两种方式:A(函数声明)、 B(函数表达式)
    A:函数声明方式定义函数:函数声明的重要特性:函数声明提升。
    注意点:①不在任何函数内声明的变量(函数内省略var的也算全局)称作全局变量(global scope)
    function a() {
    console.log('hello word');
    }
    B:函数表达式定义函数;匿名函数也称为拉姆达函数。
    var b=function () {
    console.log('hello word');
    };

    变量声明提升: 通过 var 声明的变量在代码执行之前被引擎提升到了当前作用域的顶部。
    函数声明提升: 通过函数声明的方式(非函数表达式)声明的函数在代码执行之前被引擎提升到了当前作用域的顶部,而且函数声明提升优先于变量声明提升。

    实例1:
    a();
    var a;
    function a() {
    console.log(1);
    }
    a = function() {
    console.log(2);
    }
    a();
    运行结果:
    1
    2

    实例2:
    a();
    var a;
    function a() {
    console.log(1);
    }
    a = function() {
    console.log(2);
    }
    function a() {
    console.log(3);
    }
    a();
    运行结果:
    3
    2

    函数递归调用:

    相关文章

      网友评论

          本文标题:函数表达式和函数声明

          本文链接:https://www.haomeiwen.com/subject/ggbqpxtx.html