For most low to medium risk profiles HTTPS is safe enough. However in these cases in-browser encryption is rarely needed. For the threat model applications like Cryptocat faces, the danger for a targeted attack by someone with access to the CA infrastructure is not negligible.
So if can trust the server with your data, you don't need JS cryptology. If you can't trust the server, how can you trust the JS it sends?