La fonction
eval(String) évalue une chaîne et exécute le code JavaScript qu'elle contient.
Valeur de retour
La valeur obtenue en évaluant la chaîne (le cas échéant).
Description
Cette méthode n'accepte que les chaînes brutes comme paramètres. Si le paramètre de chaîne n'est pas une chaîne brute, alors la méthode retournera inchangée. Par conséquent, veuillez ne pas transmettre d'objets String comme arguments à la fonction eval().
Les implémentations ECMAScript permettent de lever une exception EvalError si une tentative est faite pour remplacer la propriété eval ou attribuer la méthode eval() à une autre propriété et l'appeler via cette propriété.
Jetés
S'il n'y a pas d'expressions et de déclarations juridiques dans les paramètres, une exception SyntaxError sera levée.
Si eval() est appelé illégalement, une exception EvalError sera levée.
Si le code Javascript passé à eval() génère une exception, eval() transmettra l'exception à l'appelant.
Conseils et notes
Astuce : Bien que eval() soit très puissant, il est rarement utilisé dans la réalité.
Exemple :
<html> <body> <script type="text/javascript"> eval("x=10;y=20;document.write(x*y)") document.write("<br />") document.write(eval("2+2")) document.write("<br />") var x=10 document.write(eval(x+17)) document.write("<br />") eval("alert('Hello world')") </script> </body> </html>
Sortie :
200
4
24