webForumDet fria alternativet

kolla om variabel existerar...

4 svar · 212 visningar · startad av pnisv97

pnisv97Medlem sedan apr. 200248 inlägg
#1

Hejsan!

Jag vill kolla om en varibel finns eller inte. Hur göra detta ? Med nedan kod kan jag kolla om ett objekt finns eller inte. Men det fungerar inte på variablar..

Ngn som har en lösning ?..

if (window.myVariableName) {
     document.write("värdet finns");
}
else {
     document.write("värdet finns inte ");
}
WebbmonstretMedlem sedan nov. 200060 inlägg
#2

Det här funkar (i IE):

if ((myVariableName) || (myVariableName==0)){
     document.write("värdet finns");
}
else {
     document.write("värdet finns inte ");
}

Därför:
'if (myVariableName)' kollar om 'myVariableName' är true eller false. false är den ju om den inte finns, men även om den är 0. En nydefinierad variabel får i IE värdet 0 och den blir ju också false. I Netscape får den värdet 'undefined' och det går att kolla så här:

if (myVariableName==undefined)

men det fukar inte i IE då!

Detta är allt jag hittat, men jag är ju inget proffs å andra sidan!
:)

WebbmonstretMedlem sedan nov. 200060 inlägg
#3

Förlåt! Det funkade ju inte alls i IE om variabeln inte var definierad.

Jag vet inte hur man generellt kollar en odefinierad variabel!

Det går ju att använda om man ser till att alltid ge variablerna värden direkt!

:/

pnisv97Medlem sedan apr. 200248 inlägg
#4

Ingen som har en lösning ???

Måste ju bara funka att kolla om en variabel finns eller inte...

JojoxxMedlem sedan juni 20004 306 inlägg
#5

Försöker du anropa ett objekt som inte finns får du felmeddelande. Då kan du ha en funktion som kollar felmeddelande, men det är inte snyggt. Då är det bättre att du alltid definierar variabler som förekommer på sidan allra först i koden;

var foo,bar,gogo,koko;

och sedan kan du lugnt kolla dem med;

if(bar){
   // jopp. bar finns och är inte false eller null.
}
Genererad på 363 ms · cache AV · v20260730165559-full.f96bc7eb