I've still written a comment in John Resig blog  about Re-Securing JSON  and FireFox or Safari 3 const  behaviour to create an immutable function, called Native, and to retrieve original Array, Object, String or other constructors. This is the function: const Native = (function(){  const NArray = Array,   NBoolean = Boolean,   NDate = Date,   NError = Error,   NMath = Math,   NNumber = Number,   NObject = Object,   NRegExp = RegExp,   NString = String;  return function(Native){   switch(Native){    case Array:return NArray;    case Boolean:return NBoolean;    case Date:return NDate;    case Error:return NError;    case Math:return NMath;    case Number:return NNumber;    case Object:return NObject;    case RegExp:return NRegExp;    case String:return NString;   };  }; })(); // Example Array = Native(Array); eval("[1,2,3]"); At the same time I've talked about IE behaviour and its missed support for const . While I was thinking about that I imagined a way to use a piece...