- Mastering Immutable.js
- Adam Boduch
- 202字
- 2021-07-08 10:30:13
Using the clear() method
You don't actually have to create a utility function to empty collections by replacing them with new instances. The clear() method does the same thing:
const myList = List.of(1, 2);
const myMap = Map.of('one', 1, 'two', 2);
// Create new instances by emptying the
// existing instances.
const myEmptyList = myList.clear();
const myEmptyMap = myMap.clear();
console.log('myList', myList.toJS());
// -> myList [ 1, 2 ]
console.log('myEmptyList', myEmptyList.toJS());
// -> myEmptyList []
console.log('myMap', myMap.toJS());
// -> myMap { one: 1, two: 2 }
console.log('myEmptyMap', myEmptyMap.toJS());
// -> myEmptyMap {}
The benefit with the clear() method is that you don't have to invent a utility function that returns new collection instances based on type. Another advantage is that the clear() method will first check to see if the collection is already empty and, if so, it will return the current collection.
Immutable.js does something neat when it creates new collections. The first time an empty collection is created, let's say a list, that same list instance is reused whenever an empty list is needed. If you create an empty list ( List()), or clear a list ( myList.clear()), the same instance is reused every time. This is only possible because collections are immutable.
推薦閱讀
- iOS面試一戰到底
- 控糖控脂健康餐
- C語言程序設計基礎與實驗指導
- Java從入門到精通(第5版)
- Building Minecraft Server Modifications
- Learning Selenium Testing Tools(Third Edition)
- Working with Odoo
- Hands-On GUI Programming with C++ and Qt5
- Couchbase Essentials
- MySQL程序員面試筆試寶典
- SQL Server 2016 從入門到實戰(視頻教學版)
- 計算機應用基礎(第二版)
- 計算語言學導論
- FusionCharts Beginner’s Guide:The Official Guide for FusionCharts Suite
- 透視C#核心技術:系統架構及移動端開發