a Crypto library is never 100% waterproof, i.e., take an encryption, or hashing method called HashA (fictional), in 3, maybe 4 years, an update will be released, lets call that HashB, the reason is that people will study, and try to either crack, or find a weakness in algorithems and codes, so in 4 years, HashA won't be as safe, so poeple tend to bend towards HashB.
To awnser your question, i asked around a little bit for you, we dont use alot of security in JS, but we still prefer to, since its that "little bit extra" we like to do.
the "Forge" JS Crypto Library was first made around late 2009, and went live somewhere in 2010 if i'm right, and has alot of inbuild functions like hashing, storage of passwords, encryption, TLS implention and more.
Since its so a bit "aged", people would sometimes say "better not", but i use it too, and didnt encounter any problems yet, i'd say this is safe, atleast for now, but dont forget to update it when they are released!
here is a link to the main webpage of Froge: http://digitalbazaar.com/forge/