Показать сообщение отдельно
  #36 (permalink)  
Старый 07.02.2013, 12:36
Аватар для nerv_
junior
Отправить личное сообщение для nerv_ Посмотреть профиль Найти все сообщения от nerv_
 
Регистрация: 29.11.2011
Сообщений: 3,924

Сообщение от 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. Впрочем, надо тестировать...
__________________
Чебурашка стал символом олимпийских игр. А чего достиг ты?
Тишина - самый громкий звук

Последний раз редактировалось nerv_, 07.02.2013 в 12:47.
Ответить с цитированием