function foo(a) {
if (/* Certaines conditions */) {
// effectuer la tâche 1
// effectuer la tâche 3
}
else {
// effectuer la tâche 2
// effectuer la tâche 3
}
}
J'ai une fonction dont la structure est similaire à celle ci-dessus. Je veux abstraire tâche 3 dans une fonction, bar()
, mais je souhaite limiter l'accès de cette fonction uniquement dans la portée de foo(a)
.
Pour réaliser ce que je veux, est-il correct de changer pour ce qui suit ?
function foo(a) {
function bar() {
// Effectuer la tâche 3
}
if (/* Certaines conditions */) {
// Effectuer la tâche 1
bar();
}
else {
// Effectuer la tâche 2
bar();
}
}
Si ce qui précède est correct, bar()
est-elle redéfinie chaque fois que foo(a)
est appelée ? (Je m'inquiète de la perte de ressources CPU ici.)