Some code that I don\'t have control over is overriding the global JSON object without checking if it\'s already implemented:
var JSON = {
org: \"http://ww
You can create an iframe
element (which will load about:blank
and hence create a new context) and get a JSON object from there.
function restoreJSON() {
var f = document.createElement("iframe");
f.style.display = "none";
document.documentElement.appendChild(f);
window.JSON = f.contentWindow.JSON;
document.documentElement.removeChild(f);
}
about:blank
is loaded synchronously, so no need to wait for the load
event. While this isn't restoring the original JSON object, it is getting one black-box identical to it.