mozilla
Your Search Results

    E4X

    Do JavaScriptu 1.6 byl implementován standard E4X (CMA 357). E4X velmi usnadňuje práci s XML dokumenty – přístup k elementům, dotazy a další věci, které byly doposud řešitelné jen pomocí DOM (často velmi neohrabaně).

    Podpora tohoto standardu velmi zjednodušuje a zefektivňuje vývoj komplexních webových aplikací, kde je manipulace se stromem dokumentu na denním pořádku. Ostatně, podívejte se sami na ukázku identického kódu, implementovaného nejdříve pomocí konvenčního DOM a poté s využitím E4X (příklad je převzat přímo ze specifikace E4X):

    DOM:

    function createTable () {
      var mybody = document.getElementsByTagName("body").item(0);
      mytable = document.createElement("TABLE");
      mytablebody = document.createElement("TBODY");
      for (var j = 0; j < 2; j++) {
        mycurrent_row = document.createElement("TR");
        for (var i = 0; i < 2; i++) {
          mycurrent_cell = document.createElement("TD");
          currenttext = document.createTextNode("cell is row " + j + ", column " + i);
          mycurrent_cell.appendChild(currenttext);
          mycurrent_row.appendChild(mycurrent_cell);
        }
        mytablebody.appendChild(mycurrent_row);
      }
      mytable.appendChild(mytablebody);
      mybody.appendChild(mytable);
      mytable.setAttribute("border", "2");
    }
    

    E4X:

    function createTable() {
      var doc = XML(document);      // vytvoříme E4X objekt pro dokument
      var mytablebody = doc..body.TABLE.TBODY;
      for (var j = 0; j < 2; j++) {
        mytablebody.TR[j] = "";     // přidáme prázdný řádek tabulky
        for (var i = 0; i < 2; i++) // přidáme buňky s obsahem
          mytablebody.TR[j].TD[i] = "cell is row " + j + ", column " + i;
      }
      doc..body.TABLE.@border = 2;  // nastavíme tabulce hodnotu atributu border
    }
    

    Použití E4X ve skriptech

    Pokud chcete ve svém skriptu používat E4X, je vhodné takový skript označit speciálním MIME typem:

    <script type="text/javascript; e4x=1">
    

    Použijete-li standardní MIME typ text/javascript (tj. bez přípony e4x=1), E4X bude fungovat také, ale může dojít k syntaktickým chybám, pokud své skripty vkládáte mezi HTML komentáře (<-- ... -->) nebo do XML CDATA sekce (<[CDATA[...]]>).

    Další informace o E4X

    O E4X se dozvíte více v článku v Akta X 0407 na Root.cz.

    Standard E4X je součástí normy ECMA 357. Do JavaScriptu byl zahrnut ve verzi 1.6.

    Informace o původním dokumentu

    • Autor: David Majda

    Document Tags and Contributors

    Contributors to this page: Pawell, Majda
    Last updated by: Pawell,