永続的なデータ構造を持つ機能ライブラリを探しています。ネストされた配列と辞書だけが必要です。いくつかの機能的なjavascriptライブラリがありますが、それらは不変性を対象としていません。書きたい
var dict = makeDictionary({
'foo': 1;
'bar': {
'ely': 2;
}
});
var newDict = dict.assoc('foo', 42).assoc('bar', 'tender', 30).dissoc('bar', 'ely');
assert.eq dict.bar.ely, 2; // unchanged
assert.eq newDict.bar.tender, 30; // added
assert.eq newDict.bar.ely, undefined; // removed
アンダースコアは、特に配列の場合に近い場合がありますが、辞書の引数を変更します。clojurescriptを使用することもできますが、より軽量なアプローチをお勧めします。