Einsendeaufgabe zu Studienheft JSC 1

- JavaScript 1 -

Frage 1

Sie haben den Auftrag bekommen, für einen Internet-Versandhandel diese Aufgaben zu lösen:

- Nennen Sie zu jeder Aufgabe die unterschiedlichen Anforderungen und die Vor- und Nachteile eines Einsatzes von JavaScript. Stellen Sie dabei zunächst fest, ob eine Anwendung auf dem Client oder auf dem Server sinnvoller ist.
- Wie können in a) die Daten abgespeichert werden, sodass die Webseite den  Benutzernamen gleich beim Aufruf „kennt“?
- Falls Sie eine der Aufgaben nicht mit JavaScript lösen, welche Technik schlagen  Sie vor? Kann man JavaScript für eine unterstützende Teilaufgabe einsetzen, sodass der Server entlastet wird?

a) Eine Begrüßungsseite die den Benutzer mit Namen „anspricht“ und das Datum des letzten Besuchs der Webseite zeigt.

Diese Anwendung sollte auf dem Client laufen um den Server zu entlasten.
Bei einem Server mit vielen Nutzern (z. B. Amazon) würde ein serverseitiges Script die Performance stark beeinträchtigen.
Damit es funktioniert, wird beim Client ein Cookie gespeichert.
Allerdings gibt es Nutzer, die Cookies nicht akzeptieren

b) Einen Preisumrechner von Dollar in Euro (oder umgekehrt) in einer Webseite

Um den Server zu entlasten halte ich hier eine clientseitige Lösung für Sinnvoll. Eine serverseitige Lösung ginge hierbei aber auch.

c) Eine Seite, die den Warenkorb des Benutzers zusammenfasst und alle Artikel mit aktuellen Preisen und Bildern anzeigt

Für diese Umsetzung wird eine serverseitige Anwendung (z. B. ein Shop-System wie Magneto o. ä.) benötigt. Diese Anwendung benötigt einen schnellen Zugriff auf zum Teil große Datenbanken. Die Datenbanken können dann über Scripte mit der Datenbank des Anbieters verbunden werden, sodass die Preise und Bestände immer aktuell sind.

Für die Darstellung der Artikel beim Benutzer kann dann wieder JavaScript zum Einsatz kommen um den Server zu entlasten.

Frage 2

Hier ein kurzes Beispiel für eine HTML-Seite mit Java-Script:

<html>
<head>
<title>Titel zur Aufgabe 2</title>
</head>
<body>
Dies ist eine Testseite <br />
<script type="text/javascript">
<!--
// Hier kommt der JavaScript-Text
document.write(„Ihr Browser heisst: „ +
navigator.abbName;
//-->
</script>
<br />
Hier steht der normale HTML-Text.

</body>
</html>

a) Wozu dienen die Zeilen <!-- und // --> für die HTML-Seite?

Die Zeilen <!-- und // --> in einer HTML-Seite sind Kommentar-Zeilen. Sollte der Browser JavaScript nicht interpretieren können, oder JavaScript ist deaktiviert, wird das Script nicht auf der Webseite angezeigt.

b) Was kann geschehen, wenn die beiden Zeilen weggelassen werden?

Steht das JavaScript nicht in HTML-Kommentaren, so kann es sein, wenn der Browser kein JavaScript interpretieren kann oder es deaktiviert ist, dass das Script als Text auf der Webseite angezeigt wird.

c) Was passiert, wenn man eine der beiden Zeilen vergisst oder falsch schreibt, z. B. <!- oder // ->?

m = Wert: bisher nicht definiert; Datentyp: Dezimalsystem
n = Wert: NULL (Nullwert); Datentyp: Dezimalsystem
x = Wert: 0; Datentyp; ganze Zahlen, Oktalsystem
y = Wert: 55; Datentyp: ganze Zahlen, Oktalsystem
z = Wert: 0,5; Datentyp: Fließkommazahlen, Dezimalsystem

Frage 3

- var m ;
- var n = null ;
- var x = 0 ;
- var y = 055 ;
- var z = 0.5

a) Welche der Variablen m, n, x, y , z werden durch die oben stehenden Anweisungen definiert?

Nur die Variable m wird definiert. Die Variablen n, x, y, z sind definiert.

b) Sind alle Anweisungen gültige Deklarationen?

Die Variable m muss noch definiert werden sonnst kann es zu Fehlern kommen.

c) Welchen Datentyp und welchen Wert haben die Variablen?

Für diese Umsetzung wird eine serverseitige Anwendung (z. B. ein Shop-System wie Magneto o. ä.) benötigt. Diese Anwendung benötigt einen schnellen Zugriff auf zum Teil große Datenbanken. Die Datenbanken können dann über Scripte mit der Datenbank des Anbieters verbunden werden, sodass die Preise und Bestände immer aktuell sind.

Für die Darstellung der Artikel beim Benutzer kann dann wieder JavaScript zum Einsatz kommen um den Server zu entlasten.

Frage 4

Mit welchen Attributen wird ein externes JavaScript referenziert? Nenne Sie bitte den Fall, in dem ein externes JavaScript benötigt wird.

Ein externes JavaScript wird durch den Befehl:

<script src=“name.js“>

geladen.
Ein externes JavaScript wird z.B. benötigt, wenn die auszuführenden Aktionen nicht sofort beim Laden der Webseite bereitstehen sollen, sondern erst durch Ausführen einer bestimmten Aktion (z. B. das Drücken eines Buttons)

Frage 5

Ersetzen Sie in der Vorlage die Fragezeichen so, dass die HTML-Seite unter Benutzung von JavaScript-Steuerstrukturen folgendes leistet:

– Anlegen eines Arrays von sechs Lottozahlen, gefüllt mir den Werten 9, 15, 33, 34, 42, 46.
– Ausgeben der Zahlen mittels einer Schleife in folgender Form (Achten Sie auch auf Komma und Punkt):
  Die aktuellen Lottozahlen lauten: 9, 15, 33, 34, 42, 46

<html>
<head><title>Lottozahlen – Aufgabe 5</title>
<script language=“JavaScript“>
<!--
// Hier wird das Array für die Lottozahlen
// angelegt
var lotto = new Array (6) ;
lotto [?] = 9 ;
???????? = 15 ;
??????[?] =
????????
????????
??????[5] = 46 ;
// -->
</script>
</head>
<body>
Die Lottozahlen lauten:
<script language=“JavaScript“>
<!--
var ?????
while (i !=?)
{ if (i==5) document.write(lotto[?] + „.“;
else document.write (lotto[?]+“? „);
i = ?????;
}
// -->
</script>
</body>
</html>

Mein Script

<html>
<head><title>Lottozahlen – Aufgabe 5</title>
<script language="javascript">
<!--
// Hier wird das Array für die Lottozahlen
// angelegt
var lotto = new Array (6) ;
lotto [0] = 9 ;
lotto [1] = 15 ;
lotto [2] = 33 ;
lotto [3] = 34 ;
lotto [4] = 42 ;
lotto [5] = 46 ;
// -->
</script>
</head>
<body>
Die Lottozahlen lauten:
<script language="javascript">
<!--
var i = 0;
while (i !=6)
{
if (i==5)
document.write(lotto[i] + ".");
else document.write (lotto[i]+", ");
i ++;
}
// -->
</script>
</body>
</html>

Die Onlineversion findet Ihr HIER.