Maison >interface Web >js tutoriel >Comment puis-je exécuter une fonction JavaScript en utilisant son nom de chaîne ?
Exécution de fonctions JavaScript avec représentation sous forme de chaîne
Requête : vous avez le nom d'une fonction JavaScript stocké sous forme de chaîne et avez l'intention de l'invoquer ultérieurement . Comment pouvez-vous convertir cette chaîne en pointeur de fonction pour invoquer ultérieurement la fonction ?
Réponse :
function executeFunctionByName(functionName, context /*, args */) { // Retrieve arguments var args = Array.prototype.slice.call(arguments, 2); // Split the namespace into parts var namespaces = functionName.split("."); // Get the function name var func = namespaces.pop(); // Iterate through namespaces and get the context for (var i = 0; i < namespaces.length; i++) { context = context[namespaces[i]]; } // Apply the function with the context and arguments return context[func].apply(context, args); }
executeFunctionByName("My.Namespace.functionName", window, arguments);
Cette solution permet l'exécution de fonctions dynamiques basées sur une représentation sous forme de chaîne, même pour les fonctions au sein d'espaces de noms. Considérez les solutions complètes proposées pour gérer efficacement ce scénario.
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!