理解JS的底层运行原理笔记

数据结构概念

  • 栈数据结构 =====> 先进后出
  • 堆数据结构 =====> 部分顺序,因为储存方式不一样,知道key就行。
  • 队列数据结构 ======> 先进先出
JS 5种基本数据类型: undefined null string number boolan   按值访问
JS 引入类型:  Object  按引用地址访问(指针)

JS的执行上下文分为三种

  • 全局执行环境
  • 局部执行环境
  • eval() 执行环境(工作中很少用)
JS 运行原理:

 1. 每调用一个函数就会生成一个执行环境(俗称执行上下文),执行上下文环境数量没有限制
 2. 栈顶永远是正在执行的函数, 函数执行完, 弹出栈,以此类推,全局环境在最底部,
先进后出的原则。
 3. 单线程
 4. 同步执行,只有栈顶的上下文处于执行中,其他上下文需要等待
 5. 每次某个函数被调用,就会有个新的执行上下文为其创建,即使是调用的自身函数,也是如此。

JS运行的生命周期

 1. JS运行时分两个阶段, 编译阶段,以及执行阶段。 编译阶段会进行此法解析,代码检查,以及确定
 作用域规则
 2. 执行阶段又分为两个阶段, 创建上下文以及运行代码
 3. 创建上下文,会创建一个变量对象,用来存储 参数,以及变量,确定this指向,确定作用域链
 4. 运行代码阶段,进行赋值等等。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值