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++;
    })