function foo(a) {
if (/* Some condition */) {
// perform task 1
// perform task 3
}
else {
// perform task 2
// perform task 3
}
}
Mam funkcję, której struktura jest podobna do powyższej. Chcę wyodrębnić zadanie 3 do funkcji, bar()ale chcę ograniczyć dostęp do tej funkcji tylko do zakresu foo(a).
Aby osiągnąć to, czego chcę, czy słuszne jest przejście na następujące?
function foo(a) {
function bar() {
// Perform task 3
}
if (/* Some condition */) {
// Perform task 1
bar();
}
else {
// Perform task 2
bar();
}
}
Jeśli powyższe jest poprawne, czy za bar()każdym foo(a)wywołaniem jest zmieniane? (Martwię się tutaj o marnowanie zasobów procesora).