Test name | Executions per second |
---|---|
setNumber | 13312209.0 Ops/sec |
setCall | 6746080.5 Ops/sec |
setTypecheck(num) | 13313842.0 Ops/sec |
setTypecheck(call) | 6710818.5 Ops/sec |
var obj = { a:1 }
function setNumber(key, value) {
obj[key] = value;
}
function setCall(key, getValue) {
obj[key] = getValue(obj);
}
function setTypecheck(key, value) {
obj[key] = typeof value === "number" ? value : value(obj);
}
function getValue() {
return 100;
}
setNumber("a", 100);
setCall("a", getValue);
setTypecheck("a", 100);
setTypecheck("a", getValue);