Total newbie question. comment puis-je obtenir le code suivant à travailler. L'idée est d'avoir le test de fonction sous forme de chaîne, et de pouvoir l'exécuter en tant que fonction. eval ne semble pas fonctionner, et j'ai essayé JSON.parse aussi, sans chance ..Convertir une chaîne en une fonction
0
A
Répondre
4
Ajouter des parenthèses autour de f_str
, de sorte qu'il est interprété comme une expression de fonction.
var f_str = "(function test(msg) { alert(msg) })";
var f = eval(f_str);
f("hello");
Dans votre code actuel, le code est interprété comme une déclaration de fonction. Vous pouvez le voir par l'impression/en utilisant la valeur de test
:
var f_str = "function test(msg) { alert(msg) }";
var f = eval(f_str);//^^^^
test("hello"); // <--
0
Cela est généralement une mauvaise idée; si vous voulez exécuter JavaScript dynamique, vous pouvez utiliser un extrait comme ceci:
(function() {
var code = document.createElement('script');
code.type = 'text/javascript';
code.async = true;
code.src = '/path/to/script';
var s = document.getElementsByTagName('script')[0];
s.parentNode.insertBefore(code, s);
}());
Ou utilisez jQuery.getScript()
:
$.getScript('/path/to/script');
Questions connexes
- 1. Comment convertir une chaîne JSON en une fonction en javascript?
- 2. Convertir une chaîne hexadécimale en base64 dans une fonction Excel
- 3. convertir une chaîne en classe
- 4. Convertir une chaîne unicode en chaîne d'octets
- 5. Comment convertir une chaîne char en une chaîne wchar_t?
- 6. Convertir une chaîne en streaming
- 7. Convertir une chaîne en variable
- 8. Convertir une chaîne en System.IO.Stream
- 9. Convertir une chaîne en CLLocationCoordinate2D
- 10. Convertir une chaîne en entier
- 11. Convertir une chaîne en Uri
- 12. Convertir une chaîne en .net
- 13. convertir une chaîne en nombre
- 14. Convertir une chaîne en double
- 15. convertir une chaîne UTF8 à une chaîne UTF16 en C++
- 16. Convertir une chaîne en une expression régulière
- 17. Convertir une chaîne en une matrice multidimensionnelle
- 18. convertir une chaîne en une requête Linq
- 19. Comment convertir une chaîne en une table
- 20. Convertir une chaîne en une date Java
- 21. asp.net Convertir une chaîne CSV en chaîne []
- 22. PHP - Convertir une chaîne unicode en chaîne?
- 23. Fonction DB2 pour convertir une chaîne en entier?
- 24. Comment convertir un nom de fonction en une chaîne
- 25. Convertir une valeur de chaîne en appel de fonction
- 26. Convertir une expression algérienne en une fonction?
- 27. Convertir une fonction en une méthode OO
- 28. Comment convertir une chaîne en VariableBinding? (org.snmp4j.mp.SnmpConstants)
- 29. Clojure: convertir une chaîne en carte
- 30. Convertir une chaîne binaire en littéral binaire
Je ne sais pas votre besoin réel, mais si vous utilisez eval, vous Je le fais probablement mal. – Grinn