![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
js学习笔记
李小暖
努力干活还不黏人的小妖精
展开
-
Web高级 - 05 作用域&作用域链(闭包的形成)
创建函数时:创建一个堆( 存储代码字符串和对应的键值对 )初始化当前函数的作用域( [[scope]] =所在上下文中的变量对象VO/AO )执行函数时:创建一个新的执行上下文EC(压缩到ECStack里执行)初始化this指向初始化作用域链[[scopeChain]]创建AO变量对象用来存储变量 => arguments =>形参 =>代码执行...原创 2020-07-02 09:45:00 · 150 阅读 · 0 评论 -
web高级 - 04 浏览器堆栈内存的底层处理
编译器(把代码解析成为浏览器看得懂的结构):词法解析 / AST抽象语法树 / 构建出浏览器能够执行的代码引擎(V8引擎,webkit内核):变量提升 /作用域、闭包 /变量对象 /堆栈内存 /GO、VO、AO、EC、ECStacklet a = { n : 10 };let b = a;b.n = 20;console.log(a.n); //20let a = { n : 10 };let b = a;b = { n : 20 };console.log(a.n...原创 2020-06-22 16:48:29 · 334 阅读 · 1 评论 -
web高级 - 01数据类型
1、基本/原始数据类型(值类型):number :NaN/string /boolean /null /undefined2、引用数据类型: object:Object/Array/Regexp/Math/Date/实例对象... function3、es6新增:Symbol 唯一值NaN==NaN :falseisNaN:检测是否为有效数字isNaN("10") :false对象的属性名一定不能是引用类型值,默认会把引用类型值转换为字符串面试...原创 2020-06-21 18:14:52 · 270 阅读 · 0 评论