J'ai une application javascript assez importante et j'essaie d'optimiser les performances. Si j'ai une boucle qui va exécuter une petite fonction des milliers de fois, est-ce que le fait de placer la petite fonction loin, du point de vue du code, de la fonction appelante a une incidence sur les performances ? Merci.
Réponse
Trop de publicités?Il n'y a aucune différence entre déclarer la fonction dans la boucle ou l'appeler après chaque itération. On m'a appris que chaque fonction et variable selon sa taille crée son espace dans la RAM à l'emplacement spécifié. Javascript sait où cette fonction ou variable se trouve dans la mémoire parce que nous lui attribuons un nom comme foo
.
for(var i = 0; i < 1000; i++) foo(i);
... Your 300 lines
function foo(i) {
document.body.innerHTML += i+"<br />";
}
o
for(var i = 0; i < 1000; i++) {
document.body.innerHTML += i+"<br />";
}
Vous pouvez l'utiliser comme vous le souhaitez. Les fonctions déclarées ont une position fixe dans la mémoire et peuvent donc être appelées de n'importe où. Vous pouvez également les appeler depuis l'Europe si elles s'y trouvent.