Bestaat de variable?

Status
Niet open voor verdere reacties.

jeroendenoot

Terugkerende gebruiker
Lid geworden
14 mrt 2005
Berichten
1.492
O, nee. Ik vraag al weer iets! :confused:
Hoe kun je te weten komen of een variable bestaat? Het zal wel heel makkelijk zijn, maar ik kan het niet vinden. B.v.d.
 
Sorry, ik ken echt (bijna) niets van Engels. Ik had al een tijd gezocht, maar ik vond alleen maar dingen van PHP. En als ik het in het Nederlands zoek kan ik niets vinden...
 
als er

var Naam;

staat, dan is de variabele 'Naam' gedeclareerd.
 
Ik denk dat je me verkeerd begrijpt. Ik wil graag dat je met een if-statement kunt kijken of de variable bestaat. In PHP weet ik wel hoe het moet. Zo:

PHP:
if(isset($_GET['variable']))

Ten minste, als ik het goed heb gelezen.
Bestaat zoiets ook in JavaScript?
 
if(typeof(variabele) == 'undefined') {
statement;
};


werkt als de variabele niet bestaat of als er nog geen waarde aan toegewezen is.


Blijven vragen! :) Groet, Egel.
 
Ik denk dat het op de manier zoals ik het wil gebruiken niet lukt. Of doe ik iets fout? In ieder geval, dit werkt niet:

Code:
var _15_juni_2005_1 = 'Hallo'; 

agendaitem(15,"juni",2005,1);
agendaitem(15,"juni",2005,2);

function agendaitem(j,m,d,u) {

if(typeof(eval("_" + d + "_" + m + "_" + j + "_" + u)) == 'undefined') { 
document.write("&[b][/b]nbsp;");
}

if(typeof(eval("_" + d + "_" + m + "_" + j + "_" + u)) != 'undefined') { 
document.write(eval("_" + d + "_" + m + "_" + j + "_" + u));
}

}

Ik hoop dat hier ook een oplossing voor is.
 
Laatst bewerkt:
PHP:
var _15_juni_2005_1 = 'Hallo';

function agendaitem(d,m,j,u) {
 var tekst = "_" + d + "_" + m + "_" + j + "_" + u;
 if(eval("typeof(" + tekst + ") == 'undefined'")) {
  document.write("[test]"); // <- &nbsp;
  } else {
  document.write(eval(tekst));
  };
 };

agendaitem(15,"juni",2005,1);
agendaitem(15,"juni",2005,2);
Stevige puzzel! :)

typeof riep eval aan, maar eval liep vast door de niet bestaande variabele voordat typeof erbij kon.

De oplossing is met eval typeof aanroepen. [& j,m,d,u -> d,m,j,u]


Groet, Egel.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan