jQuery von Kopf bis Fuß (German Edition)
Nachricht von Ihren jQuery-Fähigkeiten verbreitet sich wie ein Lauffeuer. Gut so! Gerade kam eine E-Mail von der Head First Lounge mit der Anfrage, ob Sie etwas für die Unterhaltung der Gäste tun können.
Absender: Head First Lounge
Betreff: Blackjack-Applikation
Hi!
Wir hoffen, Sie können uns mit einer neuen Applikation für die Besucher unserer Website aushelfen.
Wir hätten WIRKLICH gerne ein Blackjack-Spiel für unsere Seiten. Können Sie das machen?
Idealerweise klickt der Spieler irgendwo und erhält zwei Karten mit der Option, weitere Karten anzufordern.
Hier sind die Hausregeln, nach denen das Spiel funktionieren soll:
Asse haben immer einen hohen Wert (immer 11 Punkte, niemals einen Punkt).
Liegt der zusammengerechnete Wert aller offenen Karten über 21, hat der Spieler verloren und muss neu anfangen – das Spiel ist vorbei.
Hat ein Spieler genau 21 Punkte, hat er einen Blackjack, und das Spiel ist vorbei.
Liegt der Wert der Karten bei 21 oder darunter und hat der Spieler bereits fünf Karten bekommen, ist das Spiel vorbei und er gewinnt.
Wenn keine der Bedingungen zutrifft, kann eine neue Karte gegeben werden.
Trifft eine der Bedingungen zu, wird das Spiel beendet.
Die Spieler sollen die Möglichkeit haben, vorzeitig aufzuhören und neu anzufangen.
Es soll nicht nötig sein, dafür die Seite neu zu laden, das Spiel soll sich selbst zurücksetzen.
Können Sie das für uns erledigen? Wir wären Ihnen wirklich sehr dankbar!
--
Head First
Lounge
Jim: Hey, habt ihr die E-Mail von der Head First Lounge schon gelesen?
Frank: Ja. Sieht aus, als wollten die ein einfach zu spielendes Black-Jack-Kartenspiel für ihre Website haben. Das sollte nicht allzu schwer sein.
Jim: Nicht allzu schwer? Aber wir brauchen das richtige Kartenspiel, jemanden, der die Karten verteilt, einen Zähler für den Punktestand und was weiß ich noch. Meinst du wirklich, wir können das?
Joe: Also, einfach wird das nicht, aber ich glaube, wir schaffen das. Wie du gerade sagtest: Wir brauchen jemanden, der die Karten verteilt. Das könnten wir mit einer Funktion erledigen. Eine Zufallsfunktion haben wir schon einmal geschrieben. Die könnten wir hier wiederverwenden.
Jim: Na gut. Aber was machen wir mit den Karten? Für Black Jack brauchen wir ein Spiel mit 52 Karten.
Frank: Wir könnten einfach eine große Liste erzeugen und dann zufällig eine Karte daraus auswählen.
Jim: Und wie verhindern wir, dass dieselbe Karte mehrmals ausgewählt wird?
Frank: Ich glaube, ich weiß, wie das geht ...
Jim: Wow, beeindruckend! Aber irgendwie müssen wir uns die schon ausgegebenen Karten auch merken und ihre Anzahl im Auge behalten.
Frank: Jetzt hast du mich. Da weiß ich auch nicht weiter.
Joe: Keine Sorge, es gibt eine Reihe von jQuery- und JavaScript-Features, die uns hier weiterhelfen können.
Jim: Äh, Moment mal! JavaScript? Können wir nicht einfach Variablen oder jQuery-Arrays benutzen, um die Karten zu speichern? Ich dachte, wenn wir jQuery benutzen, können wir auf JavaScript verzichten.
Frank: Bei dieser Aufgabe werden einfache Variablen nicht ausreichen. Sie können immer nur einen Wert speichern, beispielsweise eine Zahl, ein Stück Text oder ein bestimmtes Seitenelement. Und ein jQuery-Array kann zwar mehrere Werte enthalten, aber nur die von einem Selektor zurückgegebenen DOM-Elemente ...
Joe: Richtig. Wir brauchen etwas Flexibleres.
Frank: Zum Beispiel unsere eigenen Strukturen und Datentypen.
Joe: Wieder richtig. Und um unsere eigenen Strukturen zu bauen, brauchen wir JavaScript ...
In Objekten ist das Speichern noch schlauer gelöst
Bisher haben Sie Variablen und Arrays als Datenstrukturen verwendet. Variablen können einfache Dinge speichern, indem Sie einem Namen einen bestimmten Wert zuweisen. Arrays helfen dabei, mehrere Werte effizienter unter einem Variablennamen zu speichern.
Objekte bieten eine noch intelligentere Speicherung von Daten. Sie können Objekte verwenden, um mehrere Variablen zu einer bestimmten Sache zu speichern. Die Variablen innerhalb eines Objekts werden als dessen Eigenschaften bezeichnet. Ein Objekt kann außerdem bestimmte Funktionen enthalten, über die Sie mit seinen Eigenschaften interagieren können. Diese in das Objekt »eingebauten« Funktionen heißen Methoden .
Verwenden Sie Objekte, wenn Sie mehr e re D aten zu einer bestimmten Sache speichern müssen.
Kopf-Nuss
Was für Eigenschaften könnte ein Spielkartenobjekt
Weitere Kostenlose Bücher