es6的正式版本是在2015年6月正式发布的,这意味着2015年6月之前的web系统前端还在使用js。根据中国企业的平均存续周期,2017年左右使用js的遗留系统会变得非常少。在这段时间内,各种浏览器和开发环境对es6的支持度会快速攀升。2022年的时候,遇到js开发的遗留系统是一件少见的事情,遇到用es6开发的系统是大概率的事情。因此,我们要对前端编程语言做一次技术栈上的升级。
1、基本变量的类型升级
js中通用的变量类型为var声明的,这种方式声明的变量都是全局变量。
es6中通用的变量类型为let声明的,这种方式声明的变量都是局部变量。这种方式下,变量的作用域不会产生提升。即当前作用域的声明的变量只会在当前作用域生效。
代码示例如下:
let i=10;
for(let i=0;i<=3;i++){
console.log(i);
}
console.log(i);
let i=10;
for(i=0;i<=3;i++){
console.log(i);
}
console.log(i);
2、函数变量类型的变化
js中函数变量类型可以用function或者var来声明,其作用域为全局作用域。
es6中函数变量类型可以用function来声明,其作用域为全局作用域。当函数变量类型用let来声明的时候,这个必须遵守let变量的作用域规则。
示例代码:
console.log(testa());
{
let testb=function(){
return "bcd";
};
function testa(){
return "ab