Ist es schwieriger zu prüfen, ob eine Eigenschaft in einem JSON-Objekt vorhanden ist, anstatt zu prüfen, ob die Eigenschaft null ist?Überprüfen, ob die Eigenschaft vorhanden ist und nicht, ob sie null ist
Können Sie beides gleichzeitig tun?
Ist es schwieriger zu prüfen, ob eine Eigenschaft in einem JSON-Objekt vorhanden ist, anstatt zu prüfen, ob die Eigenschaft null ist?Überprüfen, ob die Eigenschaft vorhanden ist und nicht, ob sie null ist
Können Sie beides gleichzeitig tun?
Sie können hasOwnProperty(prop)
verwenden, um festzustellen, ob die Eigenschaft vorhanden ist. wenn eine Eigenschaft null ist für die Überprüfung
if ('prop' in obj)
oder
if (obj.hasOwnProperty('prop'))
Die Syntax:
var a = { p: null };
a.p == null; // true
a.hasOwnProperty('p'); // true
Sie könnten auch 'in' Operator erwähnt haben. "p" in einem " – zerkms
Die Syntax zum Prüfen, ob eine Eigenschaft vorhanden ist
if (obj.prop === null)
Im Allgemeinen können Sie beides nicht gleichzeitig tun einzelne Operation. Wenn die Eigenschaft nicht existiert, wird obj.prop
undefined
sein, also wird === null
falsch sein.
In vielen Fällen wissen Sie jedoch a priori, welche Art von Werten eine Eigenschaft enthalten wird. Wenn Sie wissen, dass, wenn es es existiert immer ein truthy Wert sein, können Sie einfach schreiben:
if (obj.prop)
Eine typische Situation, in diesem Fall ist, wenn die Eigenschaft immer ein Objekt enthält. Wir können davon in Idiomen profitieren wie:
if (obj && obj.prop && obj.prop.subprop && obj.prop.subprop.number == 3)
Können Sie konkret? – randominstanceOfLivingThing
http://stackoverflow.com/questions/6384421/check-whether-a-value-exists-in-json-object –
Wenn eine Eigenschaft null ist, dann ist es ==== null. Wenn es für ein JSON-Objekt nicht festgelegt ist, ist es "=== undefiniert". –