1、 var、const、let
var :声明提升、变量覆盖、无块级作用域
const:声明后必须赋值、定义的值不能修改、支持let的其他属性
let:块级作用域、无声明提升
2、原型与原型链
原型:prototype
原型链:_proto_ ([[prototype]] )
构造函数的原型链就是构造这个函数的原型,构造函数可以继承父函数的所有属性与方法
3、闭包
是什么:表现形式是方法里返回了方法
存在意义:1、延长变量的生命周期 2、创建私有环境
全局变量的弊端:1、会污染局部变量 2、不会被垃圾回收机制给回收