Iris: Was macht diese Funktion?

Beitrag lesen

Hallo!
Ich lese mir gerade ein AJAX-Tutorial durch. Aber bei folgender Funktion bin ich stutzig geworden.

  
function ausgeben() {  
   if (http.readyState == 4) {  
      var daten = http.responseText; // das ist mir noch klar  
      daten = eval("(" + daten + ")"); // aber was hier passiert ist mir rätselhaft  
  
// Und zur Vervollständigung noch hier der Rest der Funktion  
      var liste = document.getElementById("Liste");  
      for (var i = 0; i < daten.length; i++) {  
         var link = daten[i];  
         var li = document.createElement("li");  
         var a = document.createElement("a");  
         a.setAttribute("href", link.url);  
         var txt = document.createTextNode(link.text);  
         a.appendChild(txt);  
         li.appendChild(a);  
         liste.appendChild(li);  
      }  
   }  
}  

Trotz suche im WWW habe ich nichts gefunden. Kann mir bitte jemand erklären wie diese Funktion arbeitet? Vielen vielen Dank!
Liebe Grüße, Iris!

PS: Ich poste hier noch mal den kompletten Code:

  
function ausgeben() {  
   if (http.readyState == 4) {  
      var daten = http.responseText;  
      daten = eval("(" + daten + ")");  
  
      var liste = document.getElementById("Liste");  
      for (var i = 0; i < daten.length; i++) {  
         var link = daten[i];  
         var li = document.createElement("li");  
         var a = document.createElement("a");  
         a.setAttribute("href", link.url);  
         var txt = document.createTextNode(link.text);  
         a.appendChild(txt);  
         li.appendChild(a);  
         liste.appendChild(li);  
      }  
   }  
}