不可变的javascript表达式生成器

时间:2017-09-04 18:05:17

标签: javascript

是否有任何在线工具/ js库通过将输入作为可变表达式生成具有Object.assign和数组方法的不可变表达式? 例如:

var obj = {a:1};

//Input
var obj2 = obj;

//Output
var obj2 = Object.assign({}, obj);

编辑:我发现immutablejs可以轻松使用不可变对象。但语法看起来有点难以适应。

1 个答案:

答案 0 :(得分:1)

事实证明,现在可能无法实现的目标,即在JavaScript中创建不可变对象,除了支持此功能的现代版本的JavaScript之外,您不需要任何其他内容。这是一个例子:

var obj = {"a":1};

//Input
var obj2 = obj;

Object.freeze( obj2 );

console.log( Object.isFrozen( obj2 ) );

// silence is golden; can't do this:
obj2.foo = "fooey";
console.log( obj2 );

MDN

查看更多有用的信息
相关问题