"use strict"; | |
function f1(o) { | |
let result = []; | |
for (let key of Object.getOwnPropertyNames(o)) { | |
result.push(key) | |
} | |
return result; | |
} | |
function f2(a1, a2, ...args) { | |
let r = f1(a1); | |
let index = r[a2 % r.length]; | |
a1[index](...args) | |
} | |
let theObj = {}; | |
let o2 = { | |
valueOf: function (a, b) { | |
a === 42 | |
b === theObj | |
try {} catch (e) {} | |
} | |
}; | |
for (let i = 0; i < 1e5; ++i) { | |
for (let j = 0; j < 100; j++) {} | |
f2(o2, 897989, 42, theObj); | |
} |