首先查阅词典 ,mutable:可变的,immutable:不可变的
这篇文章,JavaScript函数式编程之深入理解纯函数指出,在js里基本数据类型就是不可变的,引用类型就是可变的
const { Map } = require('immutable')
var obj={name:"xxx"}
var map2=Map({app:{}})
var map3=map2.set("app",obj)
obj.age=88//给obj新增属性
var map5=map3.set("app",obj)
map5===map3//true
给map设置同一个引用obj,map3和map5完全是同一个引用,疑问:平时应不应该这么操作?
var ui=Map({ui:{appList:{appObject:{}}}}})
var map3=ui.setIn(["appList","appObject"],{count:12})
map3===ui//false
网友评论