DOM - Método de objeto de nodo - normalizar

El método normalizar agrega todos los nodos de texto, incluidos los nodos de atributo, que define una forma normal donde la estructura de los nodos que contiene elementos, comentarios, instrucciones de procesamiento, secciones CDATA y referencias de entidad separa los nodos de texto, es decir, ni los nodos de texto adyacentes ni los nodos de texto vacíos.

Sintaxis

A continuación se muestra la sintaxis para el uso del método de normalización .

nodeobject.normalize();

Este método no tiene parámetros ni valor de retorno.

Ejemplo

El contenido de node.xml es el siguiente:

<?xml version = "1.0"?>
<Company>
   <Employee category = "Technical">
      <FirstName>Tanmay</FirstName>
      <LastName>Patil</LastName>
      <ContactNo>1234567890</ContactNo>
      <Email>[email protected]</Email>
   </Employee>
   
   <Employee category = "Non-Technical">
      <FirstName>Taniya</FirstName>
      <LastName>Mishra</LastName>
      <ContactNo>1234667898</ContactNo>
      <Email>[email protected]</Email>
   </Employee>
   
   <Employee category = "Management">
      <FirstName>Tanisha</FirstName>
      <LastName>Sharma</LastName>
      <ContactNo>1234562350</ContactNo>
      <Email>[email protected]</Email>
   </Employee>
</Company>

El siguiente ejemplo demuestra el uso del método de normalización :

<!DOCTYPE html>
<html>
   <head>
      <script>
         function loadXMLDoc(filename) {
            if (window.XMLHttpRequest) {
               xhttp = new XMLHttpRequest();
            } else // code for IE5 and IE6 {
               xhttp = new ActiveXObject("Microsoft.XMLHTTP");
            }
            xhttp.open("GET",filename,false);
            xhttp.send();
            return xhttp.responseXML;
         }
      </script>
   </head>
   <body>
      <script>
         xmlDoc = loadXMLDoc("/dom/node.xml");
         x = xmlDoc.createElement('Employee');
         x.appendChild( document.createTextNode("EmployeeA ") );
         x.appendChild( document.createTextNode("EmployeeB ") );

         document.write("<b>Before normalize</b><br>");
         document.write("<b>Child node length: </b>"+x.childNodes.length+"<br>");
         document.write("<b>First child node: </b>"+x.childNodes[0].textContent+"<br>");
         document.write("<b>Second child node: </b>"+x.childNodes[1].textContent+"<br>");

         x.normalize();
         document.write("<b>After normalize</b><br>");
         document.write("<b>Child node length: </b>"+x.childNodes.length+"<br>");
         document.write("<b>First child node: </b>"+x.childNodes[0].textContent+"<br>");
      </script>
   </body>
</html>

Ejecución

Guarde este archivo como nodemethod_normalise.htm en la ruta del servidor (este archivo y node.xml deben estar en la misma ruta en su servidor). Obtendremos el resultado como se muestra a continuación:

Before normalize
Child node length: 2
First child node: EmployeeA
Second child node: EmployeeB
After normalize
Child node length: 1
First child node: EmployeeA EmployeeB