E4X

Матеріал з Вікіпедії — вільної енциклопедії.
Перейти до навігації Перейти до пошуку

ECMAScript for XML (E4X) — це розширення мови програмування, що додає рідну підтримку XML до ECMAScript (який включає ActionScript, DMDScript, JavaScript, JScript). Ціллю розширення є забезпечення альтернативного до DOM інтерфейсу, котрий використовує для доступу до XML документів простіший синтаксис. Він також пропонує новий спосіб для візуалізації XML. До виходу E4X до XML можна було доступитися тільки на об'єктному рівні. Замість цього E4X поводиться з XML як з примітивом (подібно до символів, чисел і логічних значень). Це означає швидший доступ, кращу підтримку, і прийняття як будівельних блоків (структур даних) програми.

E4X стандартизований Ecma International у стандарті ECMA-357. Перша редакція була опублікована в червні 2004, друга редакція — у грудні 2005.

Приклад

[ред. | ред. код]
var sales = <sales vendor="John">
    <item type="peas" price="4" quantity="6"/>
    <item type="carrot" price="3" quantity="10"/>
    <item type="chips" price="5" quantity="3"/>
  </sales>;

alert( sales.item.(@type == "carrot").@quantity );
alert( sales.@vendor );
for each( var price in sales..@price ) {
  alert( price );
}
delete sales.item[0];
sales.item += <item type="oranges" price="4"/>;
sales.item.(@type == "oranges").@quantity = 4;

Реалізації

[ред. | ред. код]

Перша реалізація E4X була спроектована Террі Лукасом (Terry Lucas) та Джоном Шнайдером (John Schneider), і з'явилася в BEA Weblogic Workshop 7.0, випущеному в лютому 2002. Реалізація BEA була заснована на рушії Rhino і випущена до специфікації ECMAScript E4X, яка була завершена у червні 2004. Натоді Джон Шнайдер уже описав у статті розширення XML у BEA Workshop.

  • E4X реалізоване у SpiderMonkey (рушій JavaScript Gecko) від версії 1.6.0[1] і у Rhino (інший рушій JavaScript від Mozilla, написаний на Java замість C) починаючи з версії 1.6R1[2].
  • Оскільки Mozilla Firefox заснований на Gecko, він може використовувати скрипти з E4X. Специфікація підтримується починаючи з версії 1.5.
  • Скриптова мова Adobe ActionScript 3 повнісью підтримує E4X. Ранні прев'ю ActionScript 3 з'явилися наприкінці 2005. Adobe 28 червня 2006 офіційно випустив мову з Flash Player 9.
  • E4X можливий у Flash CS3, Adobe AIR та Adobe Flex, оскільки вони використовують ActionScript 3 як скриптову мову.
  • E4X також можливий в Adobe Acrobat і Adobe Reader, починаючи з версій 8.0.
  • E4X також можливий у сервері застосунків Aptana Jaxer Ajax, який використовує серверний рушій Mozilla.
  • Починаючи з випуску Alfresco Community Edition 2.9B, E4X також можливий у цій системі управління документами рівня підприємства.

Виноски

[ред. | ред. код]
  1. SpiderMonkey 1.6.0 release notes. Архів оригіналу за 15 квітня 2009. Процитовано 2 травня 2010.
  2. Rhino 1.6R1 Change log. Архів оригіналу за 6 липня 2010. Процитовано 2 травня 2010.

Посилання

[ред. | ред. код]