Wat is de meest geschikte manier om te testen of een variabele ongedefinieerd is in JavaScript? Ik'heb verschillende mogelijke manieren gezien:
if (window.myVariable)
Of
if (typeof(myVariable) != "undefined")
Of
if (myVariable) //This throws an error if undefined. Should this be in Try/Catch?
Je moet typeof
gebruiken.
if (typeof something != "undefined") {
// ...
}
Als het ongedefinieerd is, zal het niet gelijk zijn aan een string die de tekens "undefined" bevat, aangezien de string niet ongedefinieerd is.
U kunt het type van de variabele controleren:
if (typeof(something) != "undefined") ...
Soms hoef je het type niet eens te controleren. Als de waarde van de variabele niet kan'evalueren naar onwaar als het wordt ingesteld (bijvoorbeeld als het'een functie is), dan kun je de variabele gewoon evalueren. Voorbeeld:
if (something) {
something(param);
}