immutable.jsってのがあるみたいですね。
facebookがClojure, Scala, Haskellなどの関数型言語に影響されて作ったとのこと
var map1 = Immutable.Map({a:1, b:2, c:3});
var clone = map1;
GitHubのREADMEによるとList, Stack, Map, OrderedMap, Set, OrderedSet and Recordに対応してますね
github.com
実装から生成されたドキュメント
Immutable.js