michael@0: function test() { return "x,y,z"; }; michael@0: function testClear() { michael@0: test().split(','); michael@0: } michael@0: loadFile("1"); michael@0: loadFile("testClear();"); michael@0: loadFile("2"); michael@0: loadFile("gc();"); michael@0: loadFile("testClear();"); michael@0: loadFile("new test(0);"); michael@0: function loadFile(lfVarx) { michael@0: if (lfVarx.substr(-3) != ".js" && lfVarx.length != 1) { michael@0: switch (lfRunTypeId) { michael@0: case 2: new Function(lfVarx)(); break; michael@0: default: evaluate(lfVarx); break; michael@0: } michael@0: } else if (!isNaN(lfVarx)) { michael@0: lfRunTypeId = parseInt(lfVarx); michael@0: } michael@0: }