ES6標准以及支持力度


 
 
各個瀏覽器對新特性的支持: https://kangax.github.io/compat-table/es6/
 
node各版本對新特性的支持: http://node.green/
 
Symbol.iterator
返回一個遍歷器對象,其本身是一個表達式。
arr[Symbol.iterator]();
 
字符串,數組,map,set都實現了Iterator接口
 
 
Map與Object的不同:
Map結構提供了“值—值”的對應,是一種更完善的Hash結構實現。如果你需要“鍵值對”的數據結構,Map比Object更合適。它類似於對象,也是鍵值對的集合,但是“鍵”的范圍不限於字符串,各種類型的值(包括對象)都可以當作鍵。
注意,只有對同一個對象的引用,Map結構才將其視為同一個鍵。這一點要非常小心。
復制代碼 復制代碼
var map = new Map();
 
map.set(['a'], 555);
map.get(['a']) // undefined
上面代碼的set和get方法,表面是針對同一個鍵,但實際上這是兩個值,內存地址是不一樣的,因此get方法無法讀取該鍵,返回undefined。
如果Map的鍵是一個簡單類型的值(數字、字符串、布爾值),則只要兩個值嚴格相等,Map將其視為一個鍵,包括0和-0。另外,雖然NaN不嚴格相等於自身,但Map將其視為同一個鍵。
 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM