预解析

预解析:

在代码中,首先会预先解析一些(变量定义、函数会预解析);

var a=12;

js只把var a提到作用域的顶部

js会把变量的声明(仅仅是声明)提到顶部。不会突破作用域

执行步骤:

读取一个script标签>预解析>执行里面的代码>

读取下一个script标签>预解析>执行里面的代码

不会突破script标签

undefined和not defined

undefined存在没有赋值

not defined  没定义 直接用

预解析作用范围:

会找本作用域之内(函数、script);

函数也有预解析,但是要注意:

当以变量的形式声明的函数,预解析会按照变量的特性走。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 代码解析参与者 需要了解变量是如何进行预解析的,首先要知道解析代码的参与者,有三个:引擎、编译器、作用域 编译器对...
    素弥阅读 554评论 0 1
  • 在ES6之前,变量使用var声明,会存在变量的预解析(函数也有预解析),我相信很多同学在刚开始学JavaScrip...
    iceman_dev阅读 8,721评论 5 34
  • 预解析:会预先解析一些(变量定义、函数会预解析);var a=12;只把var a提到作用域的顶部js会把变量的声...
    尼尼嘎嘎阅读 214评论 0 1
  • 对一段js代码,js引擎并不是读一句执行一句,而是读取一段、解释执行一段。而一段一段执行,js会对读取的这段js代...
    糖小工阅读 698评论 0 0
  • git是分布式版本控制系统,同一个Git仓库,可以分布到不同服务器上。一般情况下,可以找一台电脑充当服务器的角色,...
    冷霜寒阅读 711评论 0 0