Eval

Signaler
Messages postés
651
Date d'inscription
mercredi 22 avril 2009
Statut
Membre
Dernière intervention
3 mars 2020
-
Messages postés
651
Date d'inscription
mercredi 22 avril 2009
Statut
Membre
Dernière intervention
3 mars 2020
-
Salut tous,

Une tit question sur eval.

Voila ce que je veut faire :

J'ai des variables
var v1 = toto;
var v2 = titi;
...

Et sur saissie d'un formulaire, je voudrais vérifier si ce qui est saisie correspond à une de mes variables (nom de la variable, pas le contenue !!!).

Peut ont faire cela avec eval ?

Je me retrouve avec une variable "saisie" qui est une chaine, je voudrais pouvoir vérifier si ce qui est dans "saisie" correspond a un nom de variable défii avant.

A+
Steph

6 réponses

Messages postés
46
Date d'inscription
mercredi 9 janvier 2002
Statut
Membre
Dernière intervention
18 février 2003

Je ne suis pas sûr de comprendre la finesse de la question:))

>>function check(strFieldValue) {
>>//[...]
>>isCheck = ( (strFieldValue=="v1")||(strFieldValue=="v2") );
>>//[...]
>>}

Le eval va évaluer la chaine donc eval(strFieldValue) retourne soit la valeur soit une erreur car la variable n'existe pas...

HBigal
Messages postés
651
Date d'inscription
mercredi 22 avril 2009
Statut
Membre
Dernière intervention
3 mars 2020

Merci pour cette réponse, j'ai bien pensé faire cela, mais le nombre de variable à tester est un peut trop grande, donc cela risque d'etre relativement lent avec cette méthode.
Messages postés
44
Date d'inscription
lundi 17 juin 2002
Statut
Membre
Dernière intervention
14 mai 2006

Euh...j'ai une fonction ds un coin qui teste si une variable a été définie ou non (c bien ce que tu veux non??)
Mais bon.... le pb c k'il faut que je la retrouve...
tu l'auras en début de semaine prochaine surement

Patience...
Messages postés
651
Date d'inscription
mercredi 22 avril 2009
Statut
Membre
Dernière intervention
3 mars 2020

Je pense qu'avec cela je pourrais effectivement regler mon problème.

Merci.
Messages postés
44
Date d'inscription
lundi 17 juin 2002
Statut
Membre
Dernière intervention
14 mai 2006

Voila comme promis (avec un peu de retard ;-) )

function isDefined(ckVar){
var DEFINED_V=true;
function handleError() {
DEFINED_V=false;
return true;
}
var oldOnError=window.onerror;
window.onerror=handleError;
try {
eval(ckVar);
}catch (e)
{ DEFINED_V=false;
}
window.onerror=oldOnError;
return DEFINED_V;
}

normalement ca marche bien ;-)
Messages postés
651
Date d'inscription
mercredi 22 avril 2009
Statut
Membre
Dernière intervention
3 mars 2020

Merci, je vais voir si je peut utiliser cela :))