0

length() メソッドでできることはわかっています。

>x = <a attr1='33' />
>x.@attr1
33
>x.@attr1.length()
1
>x.@attr2.length()
0

だから私は使うことができました

if (x.@someattr.length() > 0)
{
    .... do something ....
}

しかし、より適切な方法はありますか?

4

2 に答える 2

1

気にしないでください。私はEcma-357標準、特にXML.prototype。*およびXMLList.prototype。*セクション13.4および13.5を調べて答えを見つけました。

それはhasOwnProperty()方法です:

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
于 2009-09-17T18:25:37.383 に答える
0

最も簡単な方法:

(@attr1 in theXML)

これは、id 属性が存在する場合は true を返し、そうでない場合は false を返します。

于 2013-02-26T08:42:07.277 に答える