どうにも使い道が少ない E4X をちょっとメモる。 基本的に XPath (の省略記法) に似ているので、相違点とかあげつつみたいな。XPath は E4X に似せるため省略記法を使います。省略しないと全然違う。 var doc = <root> <foo>hoge</foo> <bar>huga</bar> <baz> <foo name="neko"> <bar>pqpq</bar> </foo> </baz> </root>; doc.baz..foo /root/baz//foo E4X ではルートノードがない。 doc..foo.(@name == "neko") //foo[@name = 'neko'] E4X では括弧の前にドットがいる。括弧の中は ECMAScript の式そのまま。すなわち or は ||, and は &&。 doc.* /root/* * はそのまま