Interested Article - ECMAScript для XML
![](/images/007/264/7264801/1.jpg?rand=147064)
![](https://cdn.wafarin.com/avatars/a7cf8b1676a33f2d7b907899a3a94169.gif)
- 2020-07-29
- 1
ECMAScript для XML ( E4X ) — расширение языка программирования , добавляющее естественную поддержку XML в стандарт языка ECMAScript . Цель — обеспечить альтернативу DOM -интерфейсам для упрощения синтаксиса для доступа к XML-документам. Также предлагается новый способ отображения XML. До выпуска E4X, доступ к XML всегда осуществлялся на объектном уровне. Вместо этого E4X рассматривает XML как примитивный тип (как например, строки, целые числа, булевы значения). Это обеспечивает повышение скорости доступа, лучшую поддерживаемость и удобство использования в качестве структуры данных программы.
E4X стандартизирован организацией Ecma International в . Первая версия была опубликована в июне 2004, вторая — в декабре 2005.
Пример
var sales = <sales vendor="Джон">
<item type="горох" price="4" quantity="6"/>
<item type="морковь" price="3" quantity="10"/>
<item type="чипсы" price="5" quantity="3"/>
</sales>;
alert( sales.item.(@type == "морковь").@quantity );
alert( sales.@vendor );
for each( var price in sales..@price ) {
alert( price );
}
delete sales.item[0];
sales.item += <item type="апельсины" price="4"/>;
sales.item.(@type == "апельсины").@quantity = 4;
Реализации
Первая реализация E4X была разработана Терри Лукасом и Джоном Шнайдером и появилась в «Weblogic Workshop 7.0» компании BEA Systems , выпущенном в феврале 2002 года. Реализация от BEA основывалась на Rhino и была выпущена прежде чем спецификации ECMAScript E4X были закончены (в июне 2004 года). Джон Шнайдер заодно написал о XML-расширениях в BEA «Workshop».
- E4X реализован в SpiderMonkey (движок JavaScript на основе Gecko ), начиная с версии 1.6.0 , и в Rhino (еще один движок JavaScript от Mozilla, написанный на Java вместо Си), начиная с версии 1.6R1 .
- Поскольку Mozilla Firefox основан на Gecko, то его можно использовать для запуска скриптов, написанных с использованием E4X. Спецификация поддерживается в выпуске 1.5 и далее.
- Скриптовый язык ActionScript 3 от Adobe полностью поддерживает E4X. Ранние предварительные версии ActionScript 3 впервые стали доступны лишь в конце 2005 года. Adobe официально выпустила язык вместе с Flash Player 9 28 июня 2006 года.
- E4X доступен в Flash CS3 , Adobe AIR и Adobe Flex , так как они используют ActionScript 3 в качестве языка скриптов.
- E4X также доступен в Adobe Acrobat и Adobe Reader версий 8.0 и выше.
- E4X доступен в сервере приложений Jaxer Ajax от компании Aptana , который использует движок Mozilla на стороне сервера.
- Начиная с релиза Alfresco Community Edition 2.9B, E4X также доступен в этой корпоративной системе документооборота.
- Mozilla Firefox 21 и более поздние версии больше не поддерживают E4X.
Примечания
- 15 апреля 2009 года.
- . Дата обращения: 5 мая 2010. 6 июля 2010 года.
Ссылки
- (англ.)
- (англ.)
- (англ.)
- от 19 апреля 2008 на Wayback Machine (англ.)
- : сравнение E4X и json (англ.)
- на Mozilla Developer Center (англ.)
- (англ.)
- на Yahoo Developer Network (англ.)
![](https://cdn.wafarin.com/avatars/a7cf8b1676a33f2d7b907899a3a94169.gif)
- 2020-07-29
- 1