The Immutable.js Map() is analogous to a Javascript Object or Hash since it is comprised of key-value pairs. The Immutable.js List() is analogous to a Javascript Array and contains many of the same native methods. Let's compare the two and dive into the basics of List().
Map: From Javascript plain object
Add item to the immtuable map:
let todo = {
id: 10,
title: "Immutable,js"
}; let todos = Immutable.Map();
todo.set(todo.id, todo);
get item from Immtuable Map:
let selectedTodo = todos.get(todo.id);
List: From Javascript plain array
Add item to the Immutable List:
let shoppingList = Immutable.List(); let item = "Milk"; shoppingList.push(item);
get item from the Immutable List:
let selectedItem = shoppingList.get(0);
create List() from series of values:
// bad:
let list = Immutable.List.of("Milk", "Eggs", "Detergent", "Bread", "Steak"); // hard code a list of iterms // good:
const todoItems = ["Milk", "Eggs", "Detergent", "Bread", "Steak"];
let list = Immutable.List.of(...todoItems); var count = 0;
_.each(todoItems, (item) => {
expect(list.get(count)).to.equal(item);
count++;
})