Recs.
Updated
Processing.js takes a frame rendering approach to drawing. It is based on the drawing framework of the same namesake, which means if you are familiar with the Java Virtual Machine version, you can pick up the JavaScript version quickly.
Specs
Pros
Pro Fast rendering of complex scenes
Because Processing doesn't keep track of shape objects it's more efficient than other libraries. Processing can do more complicated effects faster than other libraries. Although this means you have to keep track of more yourself in your code, it also means you have more control over the finer details of how things are rendered.
Pro Cross-platform compatibility
In processing you can write code in both JavaScript and Processing code. This allows you to use existing Processing code on the client side.
Processing code is similar to Java in that it has static typing. This can make more complex calculations more robust, and less likely to cause conflicts.
The library takes a more frame based approach to rendering, so you use drawing functions to draw directly to the frame without objects. This can make it easier to write efficient full frame rendering scenes and post processing effects.