js变量的声明方式及区别

110 阅读1分钟

一个喜欢前端的菜鸟,不断被社会毒打!

梅花香自苦寒来

  • var
  • let
  • const

var

例如

  var name = "Jack";

特点

  • var声明的变量会挂载到全局对象上(window或者global)
  • 在函数预编译过程中,存在变量提升

文档参考

let

例如

let age = 18;

特点

  • ES6新语法,存在块级作用域(类似包含在一个对象内)
  • 存在暂时性死区,必须先声明后使用
  • 不允许当前作用域范围内重复声明
  • for循环使用let声明变量,每次都会创建一个新的作用域,可以避免闭包问题

文档参考

const

例如

const address = "北京";

特点

  • ES6新语法,存在块级作用域
  • 用来声明常量,变量名一般是大写英文字母或者下划线,在声明时必须赋值

文档参考