E4X

E4X真是一個好東西,可惜IE不支援

E4X是什麼?

可以看一下以下這篇

E4X真是一個好東西,可惜IE不支援

E4X是什麼?

可以看一下以下這篇

http://zh.wikipedia.org/wiki/E4X

看了有沒有很黯然很銷魂阿

因為先前cloudio在看actionscript3.0的書

所以看到這個玩意

簡單介紹一下E4X的寫法

E4X的寫法就像讓你直接把XML當作物件在操作一樣

要找customers節點下的CompanyName只要這樣就好了


var _xml = new XML;
_xml.load("data.xml");
var _companyName = _xml.customers.CompanyName;

這樣_companyName就是一個xmllist了直接alert(_companyName[1])

就會秀出第一個資料了

有沒有很讚阿

 

更讚的是E4X支援直接對node作條件運算

例如我要找customers節點下的CompanyName但是它的CustomerID必須是有關鍵字G的話怎麼找呢?


_xml.customers.(CustomerID.indexOf('G')>-1).CompanyName

很簡單就可以找到有個CustomerID中包含G的第一個CompanyName了

看到這裡就猜到_xml.customers.()裡面是放一個return boolean的運算式了吧

同理您也可以在裡面下regular expression

相信您用過之後一定會說出那句廣告詞

真的快 好厲害

http://www.w3schools.com/e4x/default.asp

E4X在FF上有支援但是瀏覽器畢竟要考量跨瀏覽器

或許可以考慮寫在swf裡面讓js去呼叫as當bridge去抓值吧...

只是不知道這樣能省多少功

提供一點點心得分享