在ES6之前,变量使用var声明,会存在变量的预解析(函数也有预解析).ES6引了let和const,但是现阶段ES6并没有完全普及,而且很多比较老的代码都还是按照ES5的标准甚至是ES3的标准来书写的,要想得心应手的维护之前的代码个人感觉还是很有必要了解下js的预解析机制. 一.变量和函数在内存中的存在形式 JavaScript中的变量类型和其他语言一样,有基本数据类型和引用数据类型.基本数据类型包括:undefined.null.boolean.String.Number:引用数据类型主要是…