js变量
JavaScript声明变量可以用var声明,也可以不用var声明,两种声明变量的方式有什么区别呢?
注:此处暂不讨论 ES6 中的 let 和 const
JavaScript变量分为 局部变量 和 全局变量
简单理解:
在函数中用var声明的变量即为 局部变量
在函数外用var声明的变量即为 全局变量
但是,这里说的函数中和函数外也不是绝对的,看以下代码及分析:
// demo1
var a = 123; // 全局变量
var b = 456; // 全局变量
console.log(a); // 123
console.log(b); // 456
console.log(window.a); // 123
console.log(window.b); // 456
console.log(window); // 打印结果如下图