so eine art isset () für Javascript
bernd
- javascript
Hallo,
gibt es eine Möglichkeit die Existenz einer Variablen zu prüfen, ohne eine Fehlermeldung zu erhalten. In PHP kann man dies ja mit isset() prüfen ohne das es zum Abbruch des Code kommt.
gruß
bernd
Hallo bernd,
gibt es eine Möglichkeit die Existenz einer Variablen zu prüfen, ohne eine Fehlermeldung zu erhalten.
typeof sollte das können.
Mit freundlichem Gruß
Micha
Hallo derletztekick.
gibt es eine Möglichkeit die Existenz einer Variablen zu prüfen, ohne eine Fehlermeldung zu erhalten.
typeof sollte das können.
Alternativ kann man dies auch direkt abfragen:
if (foo != undefined) {
// Code
}
Einen schönen Dienstag noch.
Gruß, Ashura
Hi,
Alternativ kann man dies auch direkt abfragen:
das ergibt gegebenenfalls eine Warnung.
Cheatah
Hallo Cheatah.
Alternativ kann man dies auch direkt abfragen:
das ergibt gegebenenfalls eine Warnung.
Stimmt. Ist auch logisch, da hier auf die Variable zugegriffen werden muss, bevor sie mit „undefined“ verglichen werden kann.
Einen schönen Dienstag noch.
Gruß, Ashura
Danke für die Antworten.
Somit gibt es also keine derartige Möglichkeit?
HHMmmmm, das ist ja doof.
Bernd
Hallo Cheatah.
Alternativ kann man dies auch direkt abfragen:
das ergibt gegebenenfalls eine Warnung.
Stimmt. Ist auch logisch, da hier auf die Variable zugegriffen werden muss, bevor sie mit „undefined“ verglichen werden kann.
Einen schönen Dienstag noch.
Gruß, Ashura
Somit gibt es also keine derartige Möglichkeit?
doch, https://forum.selfhtml.org/?t=132062&m=854367
Struppi.
Huhu Bernd,
Somit gibt es also keine derartige Möglichkeit?
if(window.foo){
alert ('foo is definded');
}
Viele Grüße
lulu
Hallo,
if(window.foo){
alert ('foo is definded');
}
Wieso votiert hier jemand für nicht hilfreich? Der Tipp ist (teilweise) korrekt für globale Variablen.
Der Zugriff über das Elternobjekt ist tatsächlich eine andere Geschichte als bloß über foo. Seltsame Sache, ist aber so: alert(foo) gibt einen JavaScript-Fehler, wenn es foo nicht gibt. alert(window.foo) ergibt hingegen einfach undefined.
Das Problem ist eher: if (window.foo) nicht vergleichbar mit typeof(foo) != "undefined", weil window.foo in dem Fall durchaus definiert sein kann mit den Werten null, false, String("") oder Number(0), die if-Abfrage aber nicht greift. Da muss man schon genauer prüfen.
Mathias
Hallo,
typeof sollte das können.
Alternativ kann man dies auch direkt abfragen:
if (foo != undefined) {
// Code
}
Nee, das ist was ganz anderes.
Das Keyword undefined bedeutet, dass eine Variable mit einem var-Statement formal deklariert wurde, ohne ihr einen Wert zuzuweisen.
~~~javascript
var foo;
alert(foo == undefined);
Äquivalent ist die Deklaration in einer Funktions-Parameterliste, ohne dass ein solcher Parameter übergeben wird:
function func (foo) {
alert(foo == undefined);
}
func();
In allen anderen Fällen kann man das undefined-Keyword vergessen.
Einfach if (foo == undefined) führt zu einem JavaScript-Fehler, der das Programm abbricht (übrigens keine »Warnung«).
Mathias