Tableau Javascript de Fonctions
var array_of_functions = [
first_function('a string'),
second_function('a string'),
third_function('a string'),
forth_function('a string')
]
array_of_functions[0];
Qui ne fonctionne pas comme prévu, car chaque fonction dans le tableau est exécuté lorsque le tableau est créé.
Quelle est la bonne façon d'exécuter n'importe quelle fonction dans le tableau en faisant:
array_of_functions[0]; //or, array_of_functions[1] etc.
Merci!
- Ne
'a string'
doivent être connus au moment où le tableau est rempli, ou peut l'appelant de la fonction de le transmettre? - J'aimerais obtenir plus de détails sur ce que vous essayez d'accomplir, parce qu'il pourrait y avoir une meilleure façon de gérer cela.
- "Tableau des Fonctions" ou, comme nous aimons l'appeler un objet avec des méthodes
- Ne pensez-vous pas que vous devriez donner plus de détails? Il pourrait y avoir une meilleure façon de gérer cela..
Vous devez vous connecter pour publier un commentaire.
et puis quand vous voulez exécuter une fonction donnée dans le tableau:
()
aprèsarray_of_functions[0]
, même si elle est vide. Je passe comme 20min juste pour savoir "pourquoi ça ne marche pas'.Je pense que c'est ce que l'affiche originale destinée à accomplir:
J'espère que cela aidera d'autres (comme moi 20 minutes il y a 🙂 à la recherche de tout indice sur la façon d'appeler les fonctions JS dans un tableau.
Sans plus de détails de ce que vous essayez d'accomplir, nous sommes un peu dans le doute. Mais vous pourriez être en mesure de s'en tirer avec l'aide de l'objet de la notation de faire quelque chose comme ça...
et d'appeler l'un d'entre eux...
Ou tout simplement:
Je voudrais compléter ce fil en postant un moyen plus facile pour exécuter diverses fonctions au sein d'un Tableau à l'aide de la
shift()
méthode Javascript initialement décrite iciC'est essentiellement le même que
Darin Dimitrov's
mais elle montre comment vous pouvez l'utiliser n'dynamiquement créer et de stocker des fonctions et des arguments.J'espère que c'est utile pour vous 🙂
JS:
ci-dessus, nous avons vu certains avec des itérations. Nous allons faire la même chose en utilisant forEach:
C'est correct
opera
avecarray_of_functions
et vous avez eu la même chose. Comment est-il maintenant?Si vous êtes en train de faire quelque chose comme essayer de passer dynamiquement des rappels vous pouvez passer d'un objet unique, comme un argument. Cela vous donne beaucoup plus de contrôle sur les fonctions auxquelles vous souhaitez vous exécutez avec n'importe quel paramètre.
Peut-être il peut vous aide à quelqu'un.
Un court chemin pour exécuter 'em all:
le probleme de ce type de fonction ne sont pas dans la "matrice de la forme", mais dans la manière dont ces fonctions sont appelées... alors...
essayez cette.. avec un simple eval()...
il œuvre ici, où rien n'supérieure était en train de faire le travail à la maison...
il espère qu'il va aider à
À L'Aide De La Fonction.le prototype.bind()
L'exécution de nombreuses fonctions à travers l'ES6 rappel
JS:
J'ai beaucoup de problèmes en essayant de résoudre celui-ci... essayé ce qui est évident, mais n'a pas de travail. Il vient ajouter une fonction vide en quelque sorte.
Je l'ai résolu en utilisant un tableau de chaînes de caractères, et plus tard avec eval:
vous avez obtenu quelques réponses ci-dessus. C'est juste une autre version.
}