Immutable.js(和原生方法不一樣):git
用於深層次的數組和對象的比較es6
數據結構:Map Set Seq List Rang(和原生不一樣)github
首先:先忘記es5 es6的數組對象方法數組
官方文檔:https://facebook.github.io/immutable-js/docs/#/數據結構
(1)setes5
Set返回值至關於拷貝spa
(2)equals 比較值是否相等3d
(3)push unshift concat對象
紅框內是immutable中的方法,並非原生的,不一樣是返回的是一個新的數組blog
(4)map:
Map類型執行map方法返回一個map類型,會更改每一個key:value項的value
Join()會把Map類型的每一項鍵值對的value拿出來變成一個字符串
(5)merge:
誰調用merge方法誰就會被括號裏的對象的重名key覆蓋
由於數組是有序的,因此返回的數組按照從左到右順序
(6)seq .toObject
Seq流對象 數據類型之一 能夠用toObject 把seq類型轉換成object類型
(7)fromJs
fromJs:
把js對象轉換成map,把數組轉換成List
(8)toObject\ toArray:\ toJs:
toObject:只轉一層
toArray:轉成數組類型,一樣只轉一層
toJs:都轉
(9)
getIn([a,b,c]) 表示 a層.b層.c
(10)
Is和equals相似
(11)Set()
神奇的發現 竟然是有序的
若是map2的c:3 則輸出爲下圖
去重
刪除
交集
Set()
鍵值對拆開
(12)
//true
//true
鏈式操做,push list就是調用方法的這個對象
(13)Seq
console.log(oddSquares):
(14) flip鍵值對反轉
(15)skip take
Rang(1,2000) 取1到2000
Skip跳過,take取幾個