ecmaScript-定义变量

简言

了解定义变量的三种方式:var、let、const。

正文

var

var 语句 用于声明一个函数范围或全局范围的变量,并可将其初始化为一个值(可选)。
特点:

  • 无论在何处声明变量,都会在执行任何代码之前进行变量提升。
  • var 可以多次声明同名变量。
  • 没有块级作用域,for循环不要用var定义变量。
  • 不能被 delete删除。
var a = 1
console.log(a)
a = 2
console.log(a)
var a = 3
console.log(a)
function fn() {
  b = 5
  const f = () => {
    var b = 4
    console.log(b)
  }
  {
    var c = 6
  }
  f()
  console.log(b)
  console.log(c)
}
fn()
delete a
delete b
console.log(this, a)

ecmaScript-定义变量_第1张图片

let

es6后可以使用let声明变量。
特点:

  • 具有块级作用域(大花括号包含的区域)。
  • 不能重复声明同名变量。
  • 没有变量提升,必须先声明后使用。
  • 不能被 delete删除。
console.log(d) //  d is not defined
let d = 1
console.log(d)
{
  let e = 2
  console.log(e)
}
console.log(e) //  e is not defined

const

const和let非常相似,不过声明的是常量,必须在声明时初始化,后面不能更改。一般常量用全部大写字母表示。

const F = 1
console.log(F)
F = 2
console.log(F)

结语

结束了。

你可能感兴趣的:(JavaScript,ecmascript,javascript,前端)