Here's a good example: when you use Node's vm.createContext()
method, basically a direct binding to V8 functionality, here's what that global context has:
Errors: [Error, EvalError, RangeError, ReferenceError,
SyntaxError, TypeError, URIError],
Types: [Array, Boolean, Date, Function, Map, Number,
Object, Proxy, RegExp, Set, String, WeakMap], //--harmony: [Map, Proxy, Set, WeakMap]
Primitives: [Infinity, NaN, undefined],
Dicts: [Math, JSON],
Methods: [decodeURI, decodeURIComponent, encodeURI, encodeURIComponent,
escape, eval, isFinite, isNaN, parseFloat, parseInt, unescape]
It doesn't even have set/clearTimeout, set/clearInternal (not native javascript functions). JavaScript as a language is much more tightly focused than most realize. It always exists in a host environment that adds more stuff on top.
curl
orwget
from inside V8? – Bordeaux