ES6规范及语法基础

var的特点

  •       函数作用域

let的特点

  •       没有变量提升,必须先声明。再调用
  •       同一个作用域下不可以重复定义同一个名称
  •       块级作用域

  

 function fun(){

  let a = 10

      if(true){

  let a =100 

  }

     console.log(a)

}
输出a为10,因为let为块级作用域。

暂时性死区    let a = b, b = 1 

const的特点     (数组和对象指向的是内存,对应的值可修改)

  •       没有变量提升,必须先声明。再调用
  •       同一个作用域下不可以重复定义同一个名称
  •       块级作用域
  •       声明之后就得初始化,不能只声明不赋值 
  •       声明的为只读常量,不能改变

箭头函数

简化了函数的定义

var f = v =>v;   //箭头函数后的值为return值

等同于
var f = function(){   return v }

Set  去重


const a = new Set();
添加
  a.add(1)
  链式添加:a.add(1).add(2)......

类型转换


将set转为数组
  1.   var a = Array.from(a)
  2. [...new Set([1,2,3,42,2,1,2])] //...为扩展运算符。var a = [1,2,3] ; var b = ...a 值为 1,2,3 去掉了括号


 map 

const m = new Map();

添加数据

m.set('id',1).set('name','test') 添加时为键值对添加 键可以为任何类型

循环 for of

  for( let [k,v] of m){
  .......
  }




    

猜你喜欢

转载自www.cnblogs.com/yinxin/p/12656589.html