首页 > 编程语言 >javaScript - 预解析

javaScript - 预解析

时间:2023-02-06 21:45:48浏览次数:48  
标签:function fn2 fn1 作用域 javaScript 提升 解析

代码实例:

console.log(data1) //undefined
var data1=12;

fn1(); //execute function fn1
function fn1(){
  console.log("execute function fn1")
}

fn2(); //fn2 is not a function
var fn2=function () {
  console.log("execute function fn2")
}

1.js引擎运行js分为两步:预解析 代码执行

(1) 预解析 js引擎会把里面所有的var还有function提升到当前作用域的最前面 不提升赋值操作与不调用函数

(2) 代码执行 按照代码书写的顺序从上往下执行

 

2.预解析分为变量预解析(变量提升)和函数预解析(函数提升)

(1) 变量提升就是吧所有的变量声明提升到当前的作用域的最前面 不提升赋值操作

(2) 函数提升 就是把所有的函数声明提升到当前的作用域的最前面 不调用函数

标签:function,fn2,fn1,作用域,javaScript,提升,解析
From: https://www.cnblogs.com/ErenYeager/p/17096773.html

相关文章