Apart from Math.random, built-in functions in JS are pure by design. You shouldn't derive a function with new statement which it won't do the right job for you.
JavaScript is a multi-paradigm programming language which exposes both functional and oop senses. So, you have pure functions without prototype:
Math.round // whose typeof is function
Math.floor // whose typeof is also function
Above, Math could be perceived as a namespace instead of an Object type. So it is just a container which supplies a set of functions for you.
In contrast, if you refer to functions of prototype objects in JavaScript, you will get an undefined unless you refer to them via prototype:
Array.map // undefined
Array.reduce // undefined
This is because of the matter fact that Array is not designed to be a namespace like Math, it is a class of object in OOP sense. So you need to call the function via its instance like:
var list = new Array(3);
list.map(function(a){ return 1 });
Otherwise, you may refer to the function via prototype to gain access to the pure function where this object is not bound. See following statement:
var list = [1,2,3];
typeof(Array.prototype.map); // It's pure, unbound
Array.prototype.map.call( list, function(a){ return a*2 }); // Usage in a purely-functional way
The meaning behind this is, JavaScript is designed to be writable in both OOP and Functional ways. You may need to play around with function prototype as I have given you some examples above and this will clarify you further :)