zoukankan      html  css  js  c++  java
  • [Javascript] Manage Application State with Immutable.js

    Learn how Immutable.js data structures are different from native iterable Javascript data types and why they provide an excellent foundation on which to build your application's state.

    Instead of them being mutable, they're always immutable, meaning they don't change from underneath you. The reference to them can change, but the data inside them cannot, which means you can build predictable and reliable state models on top of them. It becomes a lot easier to manage your application's state.

    console.clear();
    
    const ary = ["todo1", "todo2"];
    const ary2 = ary;
    console.log(ary[0]); // todo1
    
    ary2[0] = "done1";
    console.log(ary[0]); // done1
    
    // Immutable 
    
    function updateState(immutable, pos, value) {
      return immutable.set(pos, value);
    }
    
    const immutableState = Immutable.List(["foo1", "foo2"]);
    const immutableState2 = immutableState.set(0, "bar1");
    
    console.log(immutableState.get(0)); // foo1
    console.log(immutableState2.get(0)); // bar1

    Every time you use set() to set a new value, Immutable will return a new array.

  • 相关阅读:
    接口继承与归一化设计
    继承part1
    组合
    静态方法,小结
    类方法
    Java 集合各个接口特性
    PV操作示例详解
    什么是Java序列化,如何实现java序列化
    String简单知识点
    intValue()、parseInt()和valueOf
  • 原文地址:https://www.cnblogs.com/Answer1215/p/4881252.html
Copyright © 2011-2022 走看看