美文网首页
函数声明提升

函数声明提升

作者: 小毛蛋_ | 来源:发表于2018-03-23 10:40 被阅读0次
在JS执行上下文的时候
1.先声明  -->  先声明function关键字,然后声明变量,如果有相同function命名已经存在则会跳过
2.执行

//demo
function test() {
    console.log(foo);
    console.log(bar);

    var foo = 'Hello';
    console.log(foo);
    var bar = function () {
        return 'world';
    }

    function foo() {
        return 'hello';
    }
}


1.声明过程
function foo(){...}        函数声明提升(同一作用域)
//var foo;                 然后声明变量,如果与已经声明过的函数重名,直接跳过
var bar;

2.执行过程(就是按代码顺序执行)
console.log(foo)           //func...
console.log(bar)           //undefined
foo = 'Hello';               
console.log(foo)           //Hello
bar = function (){...}

引用

相关文章

  • 引用类型

    变量提升和函数声明提升   函数声明提升就是把函数声明提升到函数声明所在作用域中(或者说一个函数体内)的顶端,变量...

  • JavaScript 函数声明与函数表达式的区别

    函数声明 存在函数提升(同比于变量提升) 函数声明在JS解析时进行函数提升,因此在同一个作用域内,不管函数声明在哪...

  • JS中创建函数的几种方式

    1.使用 "函数声明" 创建函数函数声明具有函数声明提升的特点,将函数声明提升到作用域顶端,意思是在执行代码之前会...

  • js原生

    三种定义函数的方式 变量声明提升 在函数体内部,声明变量,会把该声明提升到函数体的最顶端。 只提升变量声明,不赋值...

  • 函数声明提升

    引用

  • 函数声明提升

    来源:https://dancon.gitbooks.io/git-books/content/js/essay/...

  • 《JavaScript高级程序设计》读书笔记-第七章(函数表达式

    函数 函数提升 函数声明提升执行代码之前会先读取函数声明。意思是可以把函数声明放到调用它的语句后面 函数表达式 这...

  • 函数表达式和函数声明

    定义函数两种方式:A(函数声明)、 B(函数表达式)A:函数声明方式定义函数:函数声明的重要特性:函数声明提升。...

  • 函数与作用域

    函数声明和函数表达式有什么区别 函数声明会提升到当前作用于执行之前;而函数表达式提升的声明是变量的声明。 函数声明...

  • 猫眼

    var变量提升,函数声明提升,消除变量声明提升(let); 高阶函数,函数式的编程,柯里化 原型链继承,js面向对...

网友评论

      本文标题:函数声明提升

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