- 全局变量
- 直接定义全局变量,未初始化的变量保存值为undefined
- 在函数体中不适用var操作符可以定义全局变量(很难维护,不要这么干)
var message;
console.log(message); // undefined
var message = "hi";
console.log(message); // "hi"
message = 100; // 有效 但是不推荐
- 局部变量
- 只在当前作用域可以访问(函数,循环体)
- 超出作用域会销毁
- 子作用域可以访问父级作用域的变量,父级不能访问子级
function test() { var message = "hi"; //局部变量 messageTest = 100; //全局变量 } test()