JS基本概念
数据类型
- 复杂数据类型
- 对象
- 数组
- 函数
- ......
- 基本数据类型
- 字符串
- undefined
- null
- 数字
- symbol
- bigint
- 布尔值
JS是怎么执行的 执行上下文:当JS引擎解析到可执行的代码片段的时候,会先做一些准备工作
全局执行上下文:代码开始执行时就会创建,然后将他压入栈底,每个生命周期只有一份
函数执行上下文:当执行一个函数时,函数内代码会被编译,生成环境变量,语法环境等
调用栈:func执行上下文:环境变量→Outer、词法循环、This
创建执行上下文:绑定This、创建词法环境(放函数)、创建变量环境(放var)
JS的进阶知识点
闭包:
通常,如果引用闭包的函数是一个全局变量,那么闭包会一直存在直到页面关闭;但如果这个闭包以后不再使用的话,就会造成内存泄漏。
如果引用闭包的函数是个局部变量,等函数销毁后,在下次JavaScipt引擎执行垃圾回收时,判断所闭包这块内容如果已经不再被使用了,那么lawaSocipt引擎的垃圾回收器就会回收这块内存。