一个喜欢前端的菜鸟,不断被社会毒打!
梅花香自苦寒来
- var
- let
- const
var
例如
var name = "Jack";
特点
- var声明的变量会挂载到全局对象上(window或者global)
- 在函数预编译过程中,存在变量提升
let
例如
let age = 18;
特点
- ES6新语法,存在块级作用域(类似包含在一个对象内)
- 存在暂时性死区,必须先声明后使用
- 不允许当前作用域范围内重复声明
- for循环使用let声明变量,每次都会创建一个新的作用域,可以避免闭包问题
const
例如
const address = "北京";
特点
- ES6新语法,存在块级作用域
- 用来声明常量,变量名一般是大写英文字母或者下划线,在声明时必须赋值