どちらの操作も非常に高速ですが、乗算は除算よりもわずかに優れたパフォーマンスを発揮します。私のテスト(下記)では、Chromeで14%の違い、IE 9で10%の違いに気づきました。ブラウザーからそのパフォーマンスを引き出す必要がある場合は、ループに入る前に分周器を乗数に変換できますが、私はしませんこのような小さな改善のために読みやすさを妥協するのは良い考えだと思います。
var cnt = 500000;
var rls = []
var ags = [[2,1], [4,2], [7,3], [4e0,1], [32e0,2], [37e0,3], [-37e7,(7e3/3e-4)]];
var fns = [
{name: "fn_mul", fn: (function(x, y) { return x * y; })},
{name: "fn_div", fn: (function(x, y) { return x / y; })}
]
// setup ---------------------------------------
for(var iag=0; iag<ags.length; iag++) {
if(Object.prototype.toString.call(ags[iag]) !== "[object Array]") {
ags[iag] = [ags[iag]]
};
}
// run ------------------------------------------
for(var ifn=0; ifn<fns.length; ifn++) {
var fn = fns[ifn].fn;
var ts = (new Date()).valueOf();
for(var iag=0; iag<ags.length; iag++) {
var ag = ags[iag];
for(var icn=0; icn<cnt; icn++) { fn.apply(this, ag); }
}
rls.push({"name": fns[ifn].name, "ts": (new Date()).valueOf() - ts});
}
dump(rls);