一、什麼是ES6?和JavaScript的關係。
ES就是ECMA(European Computer Manufacturers Association),即歐洲計算機抄製造商襲協會。百歐洲計算機制造商協會是制定信息傳輸與度通訊的國際化標準組織。
ES=ECMAScript 是一個動態腳本語言的【標準】;
JS=JavaScript 是對ES的標準、默認、主流的【實現】;
ES該標準從一開始就是針對JavaScript語言制定的,但是之所以不叫JavaScript,有兩個原因。一是商標,Java是屬於Sun公司的商標,只有Netscape公司可以合法地使用JavaScript這個名字。且JavaScript本身也已經被Netscape公司註冊爲商標。二是想體現這門語言的制定者是ECMA,不是Netscape,這樣有利於保證這門語言的開放性和中立性。
二、var、let、const的區別
var:
1.可以重複修改
2.無法限制修改
3.函數作用域(全局)
let:
1. 不能重複聲明
2. 變量(可以修改)
3. 塊級作用域(局部)
注意:
①.儘量少用var ,優先用let。var沒有封裝,容易覆蓋和混淆代碼。
②let嚴格遵守代碼順序,var聲明的變量,會忽略聲明的順序
const :
1. 不能重複聲明
2. 常量(不能修改)
3. 塊級作用域(局部)
對象的值屬性能變,對象的地址不能變
三、ES6 Map 與 Set
Map:
- 值:對象保存鍵值對。任何值(對象或者原始值) 都可以作爲一個鍵或一個值。
- size:返回Map對象中所包含的鍵值對個數
- set(key, val): 向Map中添加新元素
- get(key): 通過鍵值查找特定的數值並返回
- has(key): 判斷Map對象中是否有Key所對應的值,有返回true,否則返回false
- delete(key): 通過鍵值從Map中移除對應的數據
- clear(): 將這個Map中的所有元素刪除
遍歷方法:
- keys():返回鍵名的遍歷器
- values():返回鍵值的遍歷器
- entries():返回鍵值對的遍歷器
- forEach():使用回調函數遍歷每個成員
Set:
- 值:對象允許你存儲任何類型的值,唯一 沒有重複。無論是原始值或者是對象引用。類似數值。
- constructor:構造函數,默認就是Set函數。
- size :返回Set實例的成員總數。
- 操作方法:
- add(value):添加某個值,返回Set結構本身。
- delete(value):刪除某個值,返回一個布爾值,true表示刪除成功。
- has(value):判斷值是否存在,返回布爾值。
- clear(); 清除所有成員,沒有返回值。