Проверки перед присваиванием
Одним из распространённых приёмов программирования является проверка на отсутствие в переменной некоторого значения перед присваиванием ей этого значения.
Иногда возникают ситуации, когда можно просто переприсвоить ей это значение, не проверяя есть ли оно там или нет (заведомо знаем, что есть). Конечно, возникает мысль, что повторно выполняется присваивание переменной того же значения, которое в ней уже хранится, но эта мысль компенсируется тем, что если этого не делать, то придётся выполнять операцию проверки. Разница в производительность этих двух операций не велика, так зачем тогда делать то, чего можно не делать. Хотелось бы узнать, что это: просто стиль программирования или за этим стоят какие-нибудь другие объективные причины?? |
пример кода. На мой взгляд javascript в этом отношении вообще супер, в нем можно использовать логические операторы для присваивания значений.
|
Цитата:
Цитата:
Цитата:
|
function test (options) { options = options || {}; return options.test; } |
Цитата:
|
Цитата:
Например, я мог бы сделать так, каждый раз устанавливая заново значения style.background, вместо того, чтобы работать с запоминанием того элемента, который был нажат. <div style="cursor: pointer" onclick=" var span = this.getElementsByTagName('span'); var dl = span.length; var target = event.srcElement || event.target; for (var i = 0; i < dl; i++) { if (target == span[i]) span[i].style.background = 'green'; else span[i].style.background = 'yellow'; } "> <span>1</span> <span>2</span> <span>3</span> </div> |
Цитата:
|
Цитата:
оно? do { var i; if(i){ i += 1; } else { i = 0; } } while(1); |
Цитата:
Я хочу делать так как в этом примере, то есть переприсваивать значения переменным без проверки существуют они там уже или нет, и не ловить по этому поводу себя на мысли "а не пишу ли я говнокод", вот я и выясняю, говнокод это или нет. |
У меня тоже возникал такой вопрос. Что лучше?
Это a = a||7 или это a||(a=7) |
Часовой пояс GMT +3, время: 18:59. |