官术网_书友最值得收藏!

Chaining collection mutation methods

You've seen how you can chain collection insertion methods together and that there are two types of collection mutation method. Since each of these methods is a persistent change, they return a new collection, which means that you can chain together complex mutation behavior:

const myList = List.of(1, 2, 3);
const myMap = Map.of('one', 1, 'two', 2);

const myChangedList = myList
.push(4)
.set(3, 5)
.update(3, n => n + 5);

const myChangedMap = myMap
.set('three', 3)
.set('three', 5)
.update('three', t => t + 5);

console.log('myList', myList.toJS());
// -> myList [ 1, 2, 3 ]
console.log('myMap', myMap.toJS());
// -> myMap { one: 1, two: 2 }
console.log('myChangedList', myChangedList.toJS());
// -> myChangedList [ 1, 2, 3, 10 ]
console.log('myChangedMap', myChangedMap.toJS());
// -> myChangedMap { one: 1, two: 2, three: 10 }

Here, we're mutating a list and a map by chaining together insertion methods and mutation methods. A key design trait of the Immutable.js API is that the list methods and the map methods are the same. The obvious difference is push() versus set() for inserting items into lists and maps.

主站蜘蛛池模板: 金阳县| 秀山| 日照市| 怀来县| 灵石县| 榆中县| 大埔县| 银川市| 库伦旗| 仪陇县| 桂林市| 城口县| 普陀区| 麟游县| 句容市| 阳原县| 安康市| 绍兴市| 九台市| 伊宁市| 青河县| 哈尔滨市| 叶城县| 临安市| 尖扎县| 松原市| 绥棱县| 南木林县| 南皮县| 聂拉木县| 阳高县| 新郑市| 塔河县| 高要市| 马鞍山市| 琼海市| 江山市| 安图县| 平泉县| 巴马| 称多县|