MCPcopy
hub / github.com/spritejs/spritejs / createDict

Function createDict

docs/demo/spritejs.worker.es.js:21640–21659  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

21638
21639// Create object with fake `null` prototype: use iframe Object with cleared prototype
21640var createDict = function () {
21641 // Thrash, waste and sodomy: IE GC bug
21642 var iframe = __webpack_require__(102)('iframe');
21643 var i = enumBugKeys.length;
21644 var lt = '<';
21645 var gt = '>';
21646 var iframeDocument;
21647 iframe.style.display = 'none';
21648 __webpack_require__(120).appendChild(iframe);
21649 iframe.src = 'javascript:'; // eslint-disable-line no-script-url
21650 // createDict = iframe.contentWindow.Object;
21651 // html.removeChild(iframe);
21652 iframeDocument = iframe.contentWindow.document;
21653 iframeDocument.open();
21654 iframeDocument.write(lt + 'script' + gt + 'document.F=Object' + lt + '/script' + gt);
21655 iframeDocument.close();
21656 createDict = iframeDocument.F;
21657 while (i--) delete createDict[PROTOTYPE][enumBugKeys[i]];
21658 return createDict();
21659};
21660
21661module.exports = Object.create || function create(O, Properties) {
21662 var result;

Callers 1

Calls 3

__webpack_require__Function · 0.70
appendChildMethod · 0.45
closeMethod · 0.45

Tested by

no test coverage detected