Сообщение от js-user
|
Но программированием занимаюсь с 1996
|
Сообщение от js-user
|
вообще не понял
|
это довольно странно, учитывая то, что это азы
Сообщение от js-user
|
красота, простота и эффективность кода
|
Это несочетаемые вещи. Например, Iо, Smalltalk, не могут быть в общем случае эффективными, в смысле перформанса, именно потому, что они фантастически красивы и выразительны. Тут что-то одно, либо вы пишете код за машину, либо она это делает за Вас. Стремиться надо найти баланс, который всегда есть компромисс.
Сообщение от js-user
|
Можно подробнее?
|
разница между
el=getElement("someQuery")
fu=function(){doStaffWith(el)}
и
fu=function(){
var el=getElement("someQuery")
doStaffWith(el)
}
во времени поиска. В первом коде при вызове getElement("someQuery"), парсится документ, через какое-то время находится элемент, он возвращается и присваивается переменной. С этого момента, переменная указывает на этот элемент, его искать больше не нужно. При вызове ф-ции fu, интерпретатор ищет переменную, сначала в локальном скопе, затем в глобале. В данном случае, он находит ее за два шага, очень быстро, и сразу получает ссылку на нужный элемент
Во втором варианте, при вызове функци каждый раз выполняется var el=getElement("someQuery"), то есть, кадый раз заново парситься документ, находится элемент, присваивается переменной, и лишь затем отрабатывает doStaff, который снова резольвит переменную. Это, в общем случае намного дороже.