Что лучше писать foo()
?
foo1()
или foo2()
?
лучше с точки зрения:Чтобы объявить или нет локальные переменные в JavaScript
- Performance
- потребление памяти
- Variable/Объект энтропии
Если предположить, что другие факторы заботятся.
например: переменная не используется в нескольких местах в пределах функции и т.д.
function f1() {
return 10;
}
function f2() {
return 20;
}
function foo1() {
return f1() === f2();
}
function foo2() {
var i = f1();
var j = f2();
return i === j;
}
Посмотрите сами; http://jsperf.com/so-30611329 –
Потребление памяти будет только кратковременным, поэтому вряд ли какая-либо значимая разница там. Производительность также, вероятно, не сильно отличается, хотя 'foo1()' может иметь крошечное преимущество. Различия здесь настолько маловероятны, чтобы быть значительными, что вы должны написать код таким образом, чтобы сделать его самым чистым и легким для понимания и поддержки. Если это все, то для этого я не вижу преимущества 'foo2()' over 'foo1()', поэтому я бы пошел с более компактным 'foo1()'. – jfriend00
Какое определение энтропии вы используете? – Bergi