es6 语法之变量var/let、解构赋值

变量var与let

var相当于全局变量,在全局范围内有效,可声明多次
let只在代码块中局部有效,不可声明多次

<script>
import Vuetest from './components/footer.vue'
export default {
  name: "app",
  // components: { MapLayer },
  components: { Vuetest },
  methods:{
    //es6语法
    //第一部分 const与let
  test(){
    var a=1;
    //var相当于全局变量,在全局范围内有效,可声明多次
    //let只在代码块中局部有效,不可声明多次
    console.log(a)
    //变量 i 是用 let 声明的,当前的 i 只在本轮循环中有效,每次循环的 i 其实都是一个新的变量,,即最后输出 12345。
    for(let i=0;i<5;i++){
      setTimeout(function(){//计数器
       console.log("let声明:"+i)
      })
    }
   //例如。变量 k 是用 var 声明的,在全局范围内有效,所以全局中只有一个变量 i, 输出的 k 都是 5。
    for(var k=0;k<5;k++){
      setTimeout(function(){
       console.log("var声明:"+k)
      })
    }
  }
  },
  created(){
    this.test()
  }
};
</script>

结果图
es6 语法之变量var/let、解构赋值_第1张图片

解构赋值

//解构赋值
//数组模型基本对应
   let[a,b,c]=[1,2,3];
   console.log("基本对应"+a,b,c);

   var[i,...j]=[1,2,3,5];
   console.log("剩余对应"+i,j);
//数组模型字符串对应等
   let[d,e,f]='hel'
   console.log("字符串对应等"+d,e,f)

 //对象模型的解构(Object)
 var{h,g}={"h":"aa","g":"bb"}
 console.log("对象模型的解构"+h,g)

结果
es6 语法之变量var/let、解构赋值_第2张图片

你可能感兴趣的:(es6,es6,javascript,前端)