Mögliches Duplizieren:
Erkennen einer undefinierten Objekteigenschaft in JavaScript
Javascript undefined compare
Wie wir eine Prüfung für eine undefinierte Variable hinzufügen können, wie:
function A(val) {
if (val == undefined)
// do this
else
// do this
}
javascript
jquery
undefined
Gaurav
quelle
quelle
Antworten:
Die JQuery-Bibliothek wurde speziell entwickelt, um bestimmte JavaScript-Funktionen zu vereinfachen und zu vereinheitlichen.
Wenn Sie jedoch eine Variable mit dem
undefined
Wert vergleichen müssen, müssen Sie keine spezielle Methode erfinden, da JavaScript über einentypeof
Operator verfügt, der einfach, schnell und plattformübergreifend ist:Es wird eine Zeichenfolge zurückgegeben, die den Typ der Variablen oder eines anderen nicht bewerteten Operanden angibt. Der Hauptvorteil dieser Methode im Vergleich zu
if (value === undefined) { ... }
ist, dasstypeof
niemals eine Ausnahme ausgelöst wird, wennvalue
keine Variable vorhanden ist.quelle
("#myId")
, stellen Sie sicher, was Sie wirklich brauchen: a.typeof ("#myId")=== "undefined"
b. Oder:typeof ("#myId").val() === "undefined"
("#myId")
ist nichts anderes als eine String- Konstante. Es wird immer definiert und hat eine Art von"string"
. Wenn Sie ein tatsächlich erstelltes jQuery-Objekt meinen, mit dem$("#myId")
es erstellt wurde , wird es immer als definiert"object"
(wenn Sie jQuery korrekt verknüpft haben). Das Vorhandensein eines DOM-Elements mit IDmyId
kann mit bewertet werdenif ($("#myId").length > 0) { ... }
, während überprüft werden kann, ob sein Wert nicht leer istif ($("#myId").val()) { ... }
. Keine dieser Klauseln bezieht sich tatsächlich auf das Thema dieser Frage.value === undefined
eine Ausnahme aus, wennvalue
keine Variable vorhanden ist. Es liegt also ganz bei Ihnen, was Sie im wirklichen Leben verwenden möchten.In diesem Fall können Sie einen
=== undefined
Vergleich verwenden:if(val === undefined)
Dies funktioniert, weil es
val
immer existiert (es ist ein Funktionsargument).Wenn Sie eine beliebige Variable testen möchten, die kein Argument ist, dh möglicherweise überhaupt nicht definiert ist, müssen Sie
if(typeof val === 'undefined')
eine Ausnahme vermeiden, fallsval
diese nicht vorhanden ist.quelle
Beachten Sie, dass typeof immer eine Zeichenfolge zurückgibt und keinen Fehler generiert, wenn die Variable überhaupt nicht vorhanden ist.
quelle
===
anstelle von==
Ich weiß, dass ich zu spät komme, um die Funktion zu beantworten, aber jquery hat eine eingebaute Funktion, um dies zu tun
Weitere Informationen finden Sie im jquery API-Dokument von jquery.type https://api.jquery.com/jQuery.type/ .
quelle
Sie können die Kurzschrifttechnik verwenden, um zu überprüfen, ob sie undefiniert oder null ist
hoffe das wird dir helfen
quelle
quelle
Wenn ich "
typeof obj === undefined
" teste, erfolgt diealert(typeof obj)
Rückkehrobject
, obwohl obj undefiniert ist. Da obj die ArtObject
seiner Rückkehr istObject
, nichtundefined
.Nach stundenlangem Testen habe ich mich für die folgende Technik entschieden.
Ich bin mir nicht sicher, warum die erste Technik nicht funktioniert hat. Aber ich erledige meine Arbeit damit.
quelle
Wenn Sie Namen des Elements und keine ID haben, können wir die undefinierte Prüfung aller Textelemente (zum Beispiel) wie folgt durchführen und sie mit einem Standardwert wie 0,0 füllen:
quelle
Ich bin nicht sicher, ob es die beste Lösung ist, aber es funktioniert gut:
quelle
Versuchen Sie dies ~ alle Typprüfung
quelle
Sie können zwei Wege verwenden 1)
if ( val == null )
2)if ( val === undefine )
quelle