欢迎光临散文网 会员登陆 & 注册

千锋教育JavaScript全套视频教程(10天学会Js,前端javascrip

2023-07-15 16:23 作者:退回来路上  | 我要投稿

预解析

        => 这个预解析不能演示

        => 全靠的是想象力

        => 就是在我们的代码执行之前的一个环节

        => 就是对我们的代码进行通读并解释

      对哪些代码进行通读并解释(重点)

        => 第一个: 是对var关键字

          -> 会把var关键字和变量名提前 当前作用域最前面

          -> 这个时候不赋值

        => 第二个: 是对声明式函数

          -> 会把函数名提前 当前作用域最前面

          -> 并同时赋值为一个函数

      注意: 赋值式函数按照var的预解析规则进行预解析

JS的预解析还有一些需要注意的细节,包括以下几点:


1.函数声明和变量声明的作用域


在预解析阶段,函数声明和变量声明的作用域是整个函数或全局作用域。这意味着,在函数内部声明的函数和变量可以在整个函数内部被访问,而在全局作用域声明的函数和变量可以在整个脚本中被访问。


2.函数声明和变量声明的优先级:


在预解析阶段,函数声明的优先级高于变量声明。这意味着,如果同名函数和变量同时声明,函数声明会覆盖变量声明。

3.非全局作用域的预解析:


在非全局作用域(如函数作用域)中,预解析只会发生在该作用域内。这意味着,在函数内部声明的函数和变量只会被提升到该函数作用域的顶部,而不会影响到其他函数或全局作用域。

总的来说,预解析是JavaScript中的一个重要概念,可以帮助我们更好地理解变量和函数的作用域和生命周期。了解预解析的规则和特点,可以帮助我们编写更加规范和可读性更好的JavaScript代码。


当然,现在用了let、const和函数式表达式等,可以避免因为变量提升等带来的小麻烦。


千锋教育JavaScript全套视频教程(10天学会Js,前端javascrip的评论 (共 条)

分享到微博请遵守国家法律