1. var:最常用的定义变量的方式,变量可以修改,如果不初始化会输出undefined,不会报错
var a = 1;
a = 2;// a=2
console.log("a = " + a);
var b;
console.log("b = " + b);// b=undefined
function change(){
a = 3;
console.log("方法内a = " + a);// a=3
}
change();
console.log("a = " + a);// a=3
2. let:块级作用域,函数内部使用let定义后对函数外部无影响
function change(){
for (let i = 0; i < 3; i++) {
console.log("for i = " + i);
}
console.log("i" + i);//会提示i is not defined
}
change();
3. const:定义的变量不可以修改,而且必须初始化,跟java中的final类似
const m = 1;
// m = 2;// 会报错 Invalid or unexpected token
// const m;// 会报错 Missing initializer in const declaration
console.log("m = " + m);// m=1