En JavaScript, vous pouvez rencontrer des scénarios dans lesquels vous devez convertir une chaîne contenant un appel de fonction en une exécution de fonction réelle. Voici une solution complète :
Prérequis :
Solution :
<code class="js">var fn = window[settings.functionName];</code>
Cette étape obtient une référence à la fonction identifiée par settings.functionName, qui dans ce cas est "clickedOnItem".
<code class="js">if(typeof fn === 'function') { fn(t.parentNode.id); }</code>
Cette étape garantit que la valeur récupérée est bien une fonction. Si tel est le cas, il exécute la fonction avec l'argument spécifié.
Dans l'exemple fourni, le code traduirait la chaîne en un appel de fonction direct :
<code class="js">clickedOnItem(IdofParent);</code>
Remarque supplémentaire :
Bien que la méthode eval() puisse également évaluer des chaînes sous forme de code, elle est généralement déconseillée en raison de problèmes de sécurité. La solution présentée ici offre une alternative plus sûre.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!