JavaScript 进阶笔记
数据类型
原始类型
- string (字符串)
- number (数值)
- boolean (布尔值)
- null (空)
- undefined (未定义)
- symbol(标志)
- bigint(大数)
引用类型
- object
深浅拷贝
两种类型在内存中是如何存放的?
JS 是引用还是值传递?
类型判断
typeof
instanceof
Object.prototype.toString().call()
constructor 属性
特定类型 API
- Object.is()
- NaN.isNaN()
函数和对象
闭包
属性和方法
作用域和作用域链
作用域
什么是作用域?
什么是块级作用域?
作用域链
什么是作用域链?
this
this 的四个绑定规则
默认绑定
隐式绑定
显式绑定
new 绑定
this 的两个特殊情况
箭头函数
严格模式
继承
构造函数继承
原型链继承
寄生组合继承
class 继承
严格模式
严格模式严格在哪里?
原型和原型链
什么是原型链?
Function 和 Object 的关系?
合成事件
事件冒泡/捕获
事件委托
事件循环
什么是事件循环?
宏任务队列
微任务队列
异步编程
回调函数
Promise
Generator
Await
模块化
- CommonJS (CJS)
- AMD & CMD
- Esmodule