<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="de-x-formal">
	<id>https://glossar.hs-augsburg.de/w/index.php?action=history&amp;feed=atom&amp;title=MMProg%3AWiSe2015%3APraktikum%3AAufgabe_5</id>
	<title>MMProg:WiSe2015:Praktikum:Aufgabe 5 - Versionsgeschichte</title>
	<link rel="self" type="application/atom+xml" href="https://glossar.hs-augsburg.de/w/index.php?action=history&amp;feed=atom&amp;title=MMProg%3AWiSe2015%3APraktikum%3AAufgabe_5"/>
	<link rel="alternate" type="text/html" href="https://glossar.hs-augsburg.de/w/index.php?title=MMProg:WiSe2015:Praktikum:Aufgabe_5&amp;action=history"/>
	<updated>2026-07-16T21:38:16Z</updated>
	<subtitle>Versionsgeschichte dieser Seite in GlossarWiki</subtitle>
	<generator>MediaWiki 1.43.3</generator>
	<entry>
		<id>https://glossar.hs-augsburg.de/w/index.php?title=MMProg:WiSe2015:Praktikum:Aufgabe_5&amp;diff=38243&amp;oldid=prev</id>
		<title>Lawrence: Die Seite wurde neu angelegt: „=Praktikumsaufgabe 5=  ==Dokumentenzugriff==  ===Ziel===  Ziel dieser Aufgabe ist es die in dem Browser-Tutorium vermittelten Grundlagen für das Arbeiten mit…“</title>
		<link rel="alternate" type="text/html" href="https://glossar.hs-augsburg.de/w/index.php?title=MMProg:WiSe2015:Praktikum:Aufgabe_5&amp;diff=38243&amp;oldid=prev"/>
		<updated>2015-10-01T21:11:52Z</updated>

		<summary type="html">&lt;p&gt;Die Seite wurde neu angelegt: „=Praktikumsaufgabe 5=  ==Dokumentenzugriff==  ===Ziel===  Ziel dieser Aufgabe ist es die in dem Browser-Tutorium vermittelten Grundlagen für das Arbeiten mit…“&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Neue Seite&lt;/b&gt;&lt;/p&gt;&lt;div&gt;=Praktikumsaufgabe 5=&lt;br /&gt;
&lt;br /&gt;
==Dokumentenzugriff==&lt;br /&gt;
&lt;br /&gt;
===Ziel===&lt;br /&gt;
&lt;br /&gt;
Ziel dieser Aufgabe ist es die in dem Browser-Tutorium vermittelten Grundlagen für das Arbeiten mit Dokumenten zu vertiefen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Projekt vorbereiten===&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Anmerkung:&amp;#039;&amp;#039;&amp;#039; Es ist fortan nicht notwendig Subversion über die Kommandozeile zu bedienen.&lt;br /&gt;
Nutzen Sie dazu einfach WebStorm oder aber TortoiseSVN bzw. svnX.&lt;br /&gt;
&lt;br /&gt;
Erzeugen Sie einen neuen Ordner &amp;quot;aufgabe5&amp;quot; innerhalb Ihres Verzeichnis/Repositories.&lt;br /&gt;
Speichern Sie alle Dateien aus dem Vorlagenordner &amp;quot;aufgabe5/vorlage&amp;quot; in diesem Ordner ab.&lt;br /&gt;
&lt;br /&gt;
Machen Sie sich mit der Datei &amp;quot;index.html&amp;quot; vertraut und öffnen Sie diese testweise im Browser.&lt;br /&gt;
Speichern Sie alle Bestandteile des zu erstellenden Loggers in der Datei &amp;quot;logger.js&amp;quot; ab.&lt;br /&gt;
Die eigentliche Ausführung des Programms und die Testausgaben speichern Sie in der Datei &amp;quot;index.js&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Logger erzeugen===&lt;br /&gt;
&lt;br /&gt;
Erzeugen Sie zunächst einen global verfügbaren Konstruktor namens &amp;lt;code&amp;gt;Logger&amp;lt;/code&amp;gt; welcher mithilfe von &amp;lt;code&amp;gt;new&amp;lt;/code&amp;gt; aufgerufen werden kann.&lt;br /&gt;
Dieser Konstruktor soll ein Objekt zurückliefern welches eine Funktion namens &amp;lt;code&amp;gt;log()&amp;lt;/code&amp;gt; zur Verfügung stellt.&lt;br /&gt;
&lt;br /&gt;
Diese Funktion nimmt einen Parameter &amp;lt;code&amp;gt;message&amp;lt;/code&amp;gt; entgegen und ruft damit die Funktion &amp;lt;code&amp;gt;console.log()&amp;lt;/code&amp;gt; auf.&lt;br /&gt;
Das bedeutet dass ein Logger-Objekt zuerst nichts anderes macht als die Nachricht an die &amp;#039;&amp;#039;&amp;#039;Browser-Konsole&amp;#039;&amp;#039;&amp;#039; weiterzureichen.&lt;br /&gt;
Fügen Sie dann folgenden Aufruf in die Datei &amp;quot;index.js&amp;quot; ein und betrachten Sie die &amp;quot;index.html&amp;quot; im Browser.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;javascript&amp;quot;&amp;gt;&lt;br /&gt;
var logger = new Logger();&lt;br /&gt;
logger.log(&amp;#039;Hello World&amp;#039;);&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Die Konsole sollte dementsprechend nach Ausführung dieses Codes die Nachricht &amp;quot;Hello World&amp;quot; anzeigen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Nachrichten ins Dokument einfügen===&lt;br /&gt;
&lt;br /&gt;
Ändern Sie nun die Funktion &amp;lt;code&amp;gt;log()&amp;lt;/code&amp;gt; der Logger-Objekte so ab, dass sie fortan folgendes Verhalten aufweist:&lt;br /&gt;
&lt;br /&gt;
* Es wird ein Element-Objekt mit dem Tag-Namen &amp;lt;code&amp;gt;div&amp;lt;/code&amp;gt; erzeugt&lt;br /&gt;
* Das Argument &amp;quot;message&amp;quot; wird der Eigenschaft &amp;lt;code&amp;gt;innerHTML&amp;lt;/code&amp;gt; des erzeugten Elements zugewiesen&lt;br /&gt;
* Weisen Sie dem erzeugten Objekt als &amp;quot;class&amp;quot;-Attibut den Wert &amp;quot;message&amp;quot; zu mithilfe von &amp;lt;code&amp;gt;setAttribute(key, value)&amp;lt;/code&amp;gt;&lt;br /&gt;
* Das Element-Objekt mit der Klasse &amp;quot;messages&amp;quot; wird im Dokument gesucht mittels &amp;lt;code&amp;gt;querySelector()&amp;lt;/code&amp;gt;&lt;br /&gt;
* Dem zuvor gesuchten Objekt wird das neu erzeugte &amp;lt;code&amp;gt;div&amp;lt;/code&amp;gt;-Objekt angehängt mittels &amp;lt;code&amp;gt;appendChild()&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Folgende Anweisung soll nun dazu führen, dass eine Nachricht als sichtbares Element im Dokument eingefügt wird:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;javascript&amp;quot;&amp;gt;&lt;br /&gt;
var logger = new Logger();&lt;br /&gt;
logger.log(&amp;#039;Hello World&amp;#039;);&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Präfix für Nachrichten===&lt;br /&gt;
&lt;br /&gt;
Erweitern Sie den Logger-Konstruktor nun so, dass dieser ein Konstruktorargument namens &amp;lt;code&amp;gt;prefix&amp;lt;/code&amp;gt; entgegennimmt.&lt;br /&gt;
Anschließend soll dem erstellten Logger-Objekt der Präfix als Eigenschaft zugewiesen werden.&lt;br /&gt;
Schreiben Sie &amp;lt;code&amp;gt;log()&amp;lt;/code&amp;gt; so um, dass &amp;lt;code&amp;gt;prefix&amp;lt;/code&amp;gt; mit der Nachricht kombiniert wird und das Ergebnis als Nachricht ausgegeben wird.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;javascript&amp;quot;&amp;gt;&lt;br /&gt;
var logger = new Logger(&amp;#039;message: &amp;#039;);&lt;br /&gt;
logger.log(&amp;#039;Hello World&amp;#039;);&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Der oben stehende Code sollte dementsprechend dazu führen dass in der Konsole &amp;quot;message: Hello World&amp;quot; ausgegeben wird.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Weitere Nachrichten ausgeben===&lt;br /&gt;
&lt;br /&gt;
Schreiben Sie abschließend die Datei &amp;quot;index.js&amp;quot; so um, dass sie folgendes Verhalten aufweist:&lt;br /&gt;
&lt;br /&gt;
* Zuerst wird der Name des Benutzers abgefragt mithilfe von &amp;lt;code&amp;gt;window.prompt()&amp;lt;/code&amp;gt;&lt;br /&gt;
* Dann wird der Benutzer begrüßt durch eine Logger-Nachricht (&amp;lt;code&amp;gt;&amp;quot;Hallo &amp;quot; + name&amp;lt;/code&amp;gt;)&lt;br /&gt;
* Des Weiteren wird die aktuelle URL durch den Logger ausgegeben (&amp;lt;code&amp;gt;location.href&amp;lt;/code&amp;gt;)&lt;br /&gt;
* Zuletzt soll noch der verwendete Browser angezeigt werden (&amp;lt;code&amp;gt;navigator.userAgent&amp;lt;/code&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Verschiedene Typen===&lt;br /&gt;
&lt;br /&gt;
Ändern Sie nun die durch den Konstruktor erstellten Logger-Objekte so ab, das diese die folgenden drei Funktionen enthalten:&lt;br /&gt;
&amp;lt;code&amp;gt;logMessage()&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;logWarning()&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;logError()&amp;lt;/code&amp;gt;. Benennen Sie im ersten Schritt die Funktion &amp;lt;code&amp;gt;log()&amp;lt;/code&amp;gt; in &amp;lt;code&amp;gt;logMessage()&amp;lt;/code&amp;gt; um.&lt;br /&gt;
Die anderen beiden Funktionen &amp;lt;code&amp;gt;logWarning()&amp;lt;/code&amp;gt; und &amp;lt;code&amp;gt;logError()&amp;lt;/code&amp;gt; sollen ähnlich funktionieren mit dem Unterschied&lt;br /&gt;
dass &amp;lt;code&amp;gt;logWarning()&amp;lt;/code&amp;gt; dem erstellen Element-Objekt die HTML-Klasse &amp;quot;warning&amp;quot; zuweisen soll und &amp;lt;code&amp;gt;logError()&amp;lt;/code&amp;gt; die Klasse &amp;quot;error&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Der folgende Code soll dazu führen dass eine normale Nachricht, sowie eine orange und eine rote Nachricht ausgegeben werden.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;javascript&amp;quot;&amp;gt;&lt;br /&gt;
var logger = new Logger(&amp;#039;message: &amp;#039;);&lt;br /&gt;
logger.logMessage(&amp;#039;normal message&amp;#039;);&lt;br /&gt;
logger.logWarning(&amp;#039;something is not okay&amp;#039;);&lt;br /&gt;
logger.logError(&amp;#039;something went completely wrong&amp;#039;);&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;/div&gt;</summary>
		<author><name>Lawrence</name></author>
	</entry>
</feed>