js预编译环节 变量声明提升 函数声明整体提升

Posted showcase

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了js预编译环节 变量声明提升 函数声明整体提升相关的知识,希望对你有一定的参考价值。

预编译四部曲
1.创建AO对象
2.找形参和变量声明,将变量和形参名作为AO属性名,值为undefined
3.将实参和形参统一
4.在函数体里面找函数声明,值赋予函数体

function fn(a)
     console.log(a) //function a()
     var a = 123;
     console.log(a)//123
     function a()
     console.log(a)//123
     var b = function()
     console.log(b) //function()
     

fn(1)

以上是关于js预编译环节 变量声明提升 函数声明整体提升的主要内容,如果未能解决你的问题,请参考以下文章

js复习,预编译

js预编译和函数执行

Javascript 的变量提升与预解析

js 执行顺序

JS: GO 和 AO

js 预编译环节的变量提升