全局变量:
规范:由于所有的全局变量都会绑定到window上,如果不同的js文件,使用了相同的全局变量,冲突--》如何能减少冲突
//唯一全局变量
var liner = {};
//定义全局变量
liner.name = 'liner'
liner.add = function (a,b){
return a+b;
}
把自己的代码全部放入自己定义的唯一空间名字中,降低全局命名冲突的问题
局部作用域let
function aaa(){
for (var i=0;i<100;i++){
console.log(i)
}
console.log(i+1); //问题?i出了这个作用域还可以使用
}
解决作用域冲突问题,建议使用let去定义局部作用域的变量
function aaa(){
for (let i=0;i<100;i++){
console.log(i)
}
console.log(i+1); //Uncaught ReferenceError: i is not defined
}
常量const
const PI = '3.14';
console.log(PI);