原生js轉換為immutableData
Immutable.fromJS([1,2]) // immutable的 list
Immutable.fromJS({a: 1}) // immutable的 map
從immutableData 回到 JavaScript 對象
immutableData.toJS()
判斷兩個immutable數據是否一致
Immutable.is(immutableA, immutableB)
判斷是不是map或List
Immutable.Map.isMap(x)
Immutable.Map.isList(x)
對象合并(注意是同個類型)
immutableMaB = immutableMapA.merge(immutableMaC)
Map的增刪查改
查
immutableData.get('a') // {a:1} 得到1。
immutableData.getIn(['a', 'b']) // {a:{b:2}} 得到2。訪問深層次的key
增和改(注意不會改變原來的值,返回新的值)
immutableData.set('a', 2) // {a:1} 得到1。
immutableData.setIn(['a', 'b'], 3)
immutableData.update('a',function(x){return x+1})
immutableData.updateIn(['a', 'b'],function(x){return x+1})
刪
immutableData.delete('a')
immutableData.deleteIn(['a', 'b'])
List的增刪查改
如同Map,不過參數變為數字索引。
比如immutableList.set(1, 2)
其它便捷函數
如同underscore的方法,都有噢。
參考
http://facebook.github.io/immutable-js/docs/#/
https://segmentfault.com/a/1190000002909224
文章列表