e4x: wie man am besten überprüfen Existenz eines Attributs?
-
10-07-2019 - |
Frage
Ich weiß, dass ich es mit der Länge tun können () Methode:
>x = <a attr1='33' />
>x.@attr1
33
>x.@attr1.length()
1
>x.@attr2.length()
0
, so konnte ich verwenden
if (x.@someattr.length() > 0)
{
.... do something ....
}
aber gibt es eine angemessenere Art und Weise?
Lösung
Es macht nichts, fand ich die Antwort, indem sie durch die ECMA- 357 Standard , insbesondere die XML.prototype. * und XMLList.prototype. * Abschnitte 13.4 und 13.5.
Es ist die hasOwnProperty()
Methode:
js>x = <a attr1='33' ><item>gumball!</item></a>
<a attr1="33">
<item>gumball!</item>
</a>
js>x.@attr1
33
js>x.hasOwnProperty('@attr1');
true
js>x.hasOwnProperty('@attr2');
false
js>x.hasOwnProperty('item');
true
js>x.hasOwnProperty('mongoose');
false
Andere Tipps
einfachste Weg:
(@attr1 in theXML)
Dies wird return true, wenn id-Attribut vorhanden ist, und andernfalls false.
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow