Показать сообщение отдельно
  #14 (permalink)  
Старый 18.08.2012, 18:49
sinistral
Посмотреть профиль Найти все сообщения от melky
 
Регистрация: 28.03.2011
Сообщений: 5,418

Сообщение от Дзен-трансгуманист
Спорное утверждение. Обычно люди ищут по возможности стремятся к адекватному компромиссу между скоростью, читабельностью и реюзабилити.
я имел в виду любителей реактивных скоростей в коде людей, занимающихся муравьиной оптимизацией.

Сообщение от Дзен-трансгуманист
А количество операторов что, уже не в счет?
простите, но я в упор не вижу разницы между этим
var result = { 'left': Infinity, 'top': Infinity, 'right': -Infinity, 'bottom': -Infinity };
 
while (i--) {
  r = arr[i].getBoundingClientRect();
  if (result.left > r.left) result.left = r.left;
  if (result.top > r.top) result.top = r.top;
  if (result.right < r.right) result.right = r.right;
  if (result.bottom < r.bottom) result.bottom = r.bottom;
}
var i = arr.length, rc, l = Infinity, t = l, r = -Infinity, b = r;

while (i--) {
  rc = arr[i].getBoundingClientRect();
  if (l > rc.left) l = rc.left;
  if (t > rc.top) t = rc.top;
  if (r < rc.right) r = rc.right;
  if (b < rc.bottom) b = rc.bottom;
}

return { 'left': l, 'top': t, 'right': r, 'bottom': b };

единственное - res ушёл в конец, и его начальные величины вылезли в переменные.

ну, да. код стал меньше но не сильно.

и, да. насчёт однобуквенных переменных.
я не буду устраивать холивар. (т.е. не собираюсь)
Вам приятно будет читать такой код ?

знаю, что Ваши r,l,t,b говорят сами за себя, но всё равно они не бросаются в глаза, как left, right, top, bottom
Ответить с цитированием