J'ai utilisé eval dans mon code et j'ai récemment découvert qu'il peut y avoir de sérieux problèmes de sécurité Si eval() est utilisé dans Javascript. Le scénario le plus courant est celui où j'utilise eval() pour composer un nom de variable et ensuite obtenir la valeur de cette variable comme ici;Comment puis-je supprimer eval() du code suivant .... - Javascript
var a = "2" // could be any value
work(a);
function work(a)
{
var l1 = "something";
var l2 = "something else";
var l3 = "something different";
alert(eval("l"+a));
// alerts "something else"
};
Existe-t-il des alternatives à eval() dans une telle situation?
J'ai essayé d'utiliser window ["l" + a] mais cela ne fonctionnera que si les variables sont globales et aussi document.getElementById ("l" + a) et que cela ne marche pas non plus.
Toute aide grandement appréciée.
Merci, Norman.
Notez que 'eval' est seulement * dangereux * lorsque vous laissez l'utilisateur entrer quelque chose qui est évalué. Mais c'est aussi une mauvaise pratique, évitable dans 99,9% des cas. – Matchu