Сообщение от Gozar
|
Считай, что ты только что унизил всех людей, которые не понимают зачем нужно писать код непонятно, когда можно писать его понятно
|
+. "Не заставляйте меня думать" ... там, где этого делать не надо. Тут следовало бы сделать ремарку насчет предложенного мной варианта и в коммнтульках написать, что делает код. Кстати. это можно изобразить способом, предложенным
danik.js.
function test7(x) {
return x !== 2 ? x >> 2 : 2;
}
var lastTime=(new Date()).getTime();
for(var i = 0; i < 100000; i++) {
test7(i & 1);
}
alert("Время с использованием x !== 2 ? x >> 2 : 2 (ms): " + ((new Date()).getTime()-lastTime));
return (e.button & ~1) % 3;
// 1. ~1
// 2. e.button & x
// 3. x % 3;
Сообщение от Gozar
|
Насколько мне известно применение побитовых операций в js не приводит к увеличению скорости, а скорее наоборот.
|
слышал информацию на этот счет. Мое мнение - все меняется настолько быстро, ничему верить нельзя (в плане производительности). Тесты, тесты, тесты. При этом не факт, что если сегодня быстро, то завтра (код не трогаем, меняется только браузер ... внутри) не будет медленно и наоборот.
Сообщение от danik.js
|
предложили какие то непонятные решения для определения e.button.
|
в моем все просто и очевидно (как мне кажется), но не настолько наглядно, как в "твоем"
Если принимать во внимание, что события мыши могу обрабатываться довольно часто, то решение с объектом, пускай и наглядным, приведет к лишним задр*чкам и в без того медленном IE. Впрочем, надо тестировать...