
The es5-shim library monkey-patches a JavaScript context to contain all ECMAScript 5 methods that can be faithfully emulated with a legacy JavaScript engine.
The es5-sham part tries to complete the picture as best as possible, but for those methods the result is not as close and mostly intends to avoid runtime errors : in many cases it might just silently fail.
Node.js is an event-based server-side JavaScript engine.