简言
了解定义变量的三种方式: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)
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)
结语
结束了。