天天看點

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){
       .......
  }