Oui, c’est logique
En fait, là c’est un peu comme préparer toute
la déco Pokémon dès l’ouverture de la porte, alors que les invités ne sont même pas encore arrivés. Ton code fonctionne bien, mais il se lance automatiquement au chargement de la page, pas au moment où l’enfant (ou le parent) fait une action.
Si ton objectif est par exemple de calculer l’âge pour afficher un message personnalisé du style “Pikachu te souhaite un joyeux anniversaire !” après avoir saisi la date de naissance (ou validé un formulaire pour la fête), il faut juste déclencher ce traitement au clic sur un bouton.
En résumé :
– le calcul et le message sont OK
– il faut simplement les lancer au bon moment, quand l’utilisateur “appuie sur le bouton”, un peu comme quand on lance les animations Pokémon pile au moment du gâteau

Si tu veux, je peux aussi :
le rendre encore plus technique (vraiment dev pur),
ou au contraire plus grand public (parent qui explique simplement),
ou l’adapter à un vieux topic où tu arrives en mode “je complète la discussion”.