JIT搭載ブラウザでは変数の再代入コストは無視できる
JIT搭載ブラウザでは a = a; など同じ変数に対する代入を繰り返しても遅くならず、JIT非搭載ブラウザだと a = a; で遅くなります。
JIT非搭載
Browser | a=a | nop |
Firefox3 | 1177 | 666 |
IE8 | 2036 | 1265 |
IE6 | 4291 | 3406 |
JIT搭載
Browser | a=a | nop |
Firefox3.6 | 236 | 234 |
Safari5 | 696 | 702 |
Opera10.60 | 970 | 1028 |
Google Chrome6 | 445 | 451 |
// a = a function _a_a(idx) { var a = idx; a = a; a = a; a = a; a = a; a = a; a = a; a = a; a = a; a = a; a = a; return idx + a; } // nop function _nop(idx) { var a = idx; a = a; return idx + a; }
なーんの役にも立たないムダ知識をあなたに