You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

38 lines
1.7 KiB

/*
* Basic function call performance, call through a property lookup.
*/
if (typeof print !== 'function') { print = console.log; }
function test() {
var i;
function f() { return; }
var obj = { prop: f };
var t1 = Date.now();
for (i = 0; i < 4e5; i++) {
obj.prop(); obj.prop(); obj.prop(); obj.prop(); obj.prop(); obj.prop(); obj.prop(); obj.prop(); obj.prop(); obj.prop();
obj.prop(); obj.prop(); obj.prop(); obj.prop(); obj.prop(); obj.prop(); obj.prop(); obj.prop(); obj.prop(); obj.prop();
obj.prop(); obj.prop(); obj.prop(); obj.prop(); obj.prop(); obj.prop(); obj.prop(); obj.prop(); obj.prop(); obj.prop();
obj.prop(); obj.prop(); obj.prop(); obj.prop(); obj.prop(); obj.prop(); obj.prop(); obj.prop(); obj.prop(); obj.prop();
obj.prop(); obj.prop(); obj.prop(); obj.prop(); obj.prop(); obj.prop(); obj.prop(); obj.prop(); obj.prop(); obj.prop();
obj.prop(); obj.prop(); obj.prop(); obj.prop(); obj.prop(); obj.prop(); obj.prop(); obj.prop(); obj.prop(); obj.prop();
obj.prop(); obj.prop(); obj.prop(); obj.prop(); obj.prop(); obj.prop(); obj.prop(); obj.prop(); obj.prop(); obj.prop();
obj.prop(); obj.prop(); obj.prop(); obj.prop(); obj.prop(); obj.prop(); obj.prop(); obj.prop(); obj.prop(); obj.prop();
obj.prop(); obj.prop(); obj.prop(); obj.prop(); obj.prop(); obj.prop(); obj.prop(); obj.prop(); obj.prop(); obj.prop();
obj.prop(); obj.prop(); obj.prop(); obj.prop(); obj.prop(); obj.prop(); obj.prop(); obj.prop(); obj.prop(); obj.prop();
}
var t2 = Date.now();
print((4e5 * 100 / (t2 - t1)) + ' calls per millisecond');
}
try {
test();
} catch (e) {
print(e.stack || e);
throw e;
}