JavaScript Grundlagen

26
JavaScript - We ltweit verwendet - hat nicths mit Java zu tun - Marketingname - Definition von Objektmodellen - kein estplattenzugriff - kein Windows !egistr" #ugriff $ommentar %% bis !est der #eile %&&% 'undle - S"nta(fehler bei )*!$OMM+), ! - this.!aw/alue 0 this.!aw/alue1 %% Dumm" 2ase Sensitiv keine *mlaute Datent"p 3ndikator - i - integer - f - float - s - string - b- bool - o - object - arra" - 'ereich $amel!4ckenSchreibweise

Transcript of JavaScript Grundlagen

8/9/2019 JavaScript Grundlagen

http://slidepdf.com/reader/full/javascript-grundlagen 1/26

JavaScript - Weltweit verwendet

- hat nicths mit Java zu tun

- Marketingname

- Definition von Objektmodellen

- kein estplattenzugriff 

- kein Windows !egistr" #ugriff 

$ommentar %% bis !est der #eile

%&&% 'undle- S"nta(fehler bei )*!$OMM+),! 

- this.!aw/alue 0 this.!aw/alue1 %% Dumm"

2ase Sensitiv

keine *mlaute

Datent"p 3ndikator 

- i - integer 

- f - float

- s - string

- b- bool

- o - object

- arra" - 'ereich

$amel!4ckenSchreibweise

8/9/2019 JavaScript Grundlagen

http://slidepdf.com/reader/full/javascript-grundlagen 2/26

/ariablen-Deklaration optional

Wertzuweisung 0

Stringwert %n #eilenumbruch %r neue #eile %t tabulator 55'ackslash6

'oolsche Operation

00 gleich70 ungleich

8 kleiner 

9 gr:sser 

900 kombiniert

;; and

<< or 

< or not

Summe =0 % summe 0 summe = >

 Differenz -0 % differenz 0 differenz - >

 == addieren

-- subtrahieren

rra"

00000000000000000000000000000000000000000000000000000000

utoMarke 0 new rra"?@udi@A@'ugatti@A@D$W@A@ord@A@Opel@A@,albot@B1

00000000000000000000000000000000000000000000000000000000

utoMarke 0 new rra"?B1

utoMarkeCE 0 @udi@1

utoMarkeC>E 0 @'ugatti@1

utoMarkeCFE 0 @D$W@1

utoMarkeCGE 0 @ord@1

utoMarkeCHE 0 @Opel@1

utoMarkeCIE 0 @,albot@1

00000000000000000000000000000000000000000000000000000000

var !eihe 0 new rra"?>B1 for ?i01 i8>1 i==B K !eiheCiE 0 & i1 L

00000000000000000000000000000000000000000000000000000000

utoMarke 0 new rra"?B

Die bfrage mit utoMarke.length ergibt hier NNutoMarkeCutoMarke.lengthE 0 @udi@1

Die bfrage mit utoMarke.length ergibt hier N>NutoMarkeCutoMarke.lengthE 0 @'ugatti@1

Die bfrage mit utoMarke.length ergibt hier NFNutoMarkeCutoMarke.lengthE 0

@2orvette@1

000000000000000000000000000000000000000000000000000000002ount 0 ->1 %% 2ounter f4r rra"elemente-3nde(

var )amenrra" 0 new rra"?B 1

 )amenrra"C==2ountE 0 @Jutta@1

 )amenrra"C==2ountE 0 @#enzi@1

 )amenrra"C==2ountE 0 @gate@1

 )amenrra"C==2ountE 0 @ein@1

 )amenrra"C==2ountE 0 @Jupp@1

 )amenrra"C==2ountE 0 @$arl@1

00000000000000000000000000000000000000000000000000000000

Sie k:nnen die nzahl der +lemente eines rra" mit NlengthN ermitteln. M:chte ich

herausfindenA wie viele +lemente mein rra" mit dem )amen NutomarkenN hatA geschieht das4ber die +igenschaft NlenghtN.

8/9/2019 JavaScript Grundlagen

http://slidepdf.com/reader/full/javascript-grundlagen 3/26

JavaScript s"nta( array.length

var rra"Paenge 0 utomarken.length1

for ?i01 i 8utoMarke.length1 i== B K document.write?utoMarkeCiE = @ @B1 L

Q4ltigkeit while?a 70RB solange a ungleichRist8script t"pe0@te(t%javascript@ language0@JavaScript@9

87--

document.write?NDie utomarken sind NB1

000000000000000000000000000000000000000000000000

var a 0 1

while?a 70 RB

  K

  if?a 00 IB document.write?utoMarkeCaE = @.@B1

  else document.write?utoMarkeCaE = @A @B1

  a 0 a=>1000000000000000000000000000000000000000000000000

var a 0 1 while?a 70utoMarke.lengthB K if?a 00utoMarke.length->B

document.write?utoMarkeCaE = @.@B1 else document.write?utoMarkeCaE = @A @B1 a 0 a=>1 L

000000000000000000000000000000000000000000000000

rra" NrimzahlenN

3nde(-)ummer > F G H I

+lemente F G I T >> >G

Sie k:nnen an einem bereits e(istierenden rra" +lemente anhUngen. 3ch m:chte nun ein R.

+lement anhUngen und einen Wert zuweisen. Dem R. +lement soll der Wert >G zugewiesen

werden ?der Wert >G ist hier wiederum eine #ahlB. Der Wert steht nicht in nf4hrungszeichen7

8/9/2019 JavaScript Grundlagen

http://slidepdf.com/reader/full/javascript-grundlagen 4/26

rimzahlen.push?>TB1

00000000000000000000000000000000000000000000000000000000

String

Die +igenschaften und Methoden des Objektes String k:nnen Sie auf alle #eichenketten

anwenden. So k:nnen Sie in einer #eichenkette z.'. alle darin enthaltenen $leinbuchstaben in

QroVbuchstaben umwandelnA oder ,MP-ormatierungen auf die #eichenkette anwenden.

Das 'eispiel blendet ein Dialogfenster einA in dem der nwender irgendetwas eingeben kann.

Der eingegebene Wert wird in der /ariablen +ingabe gespeichert. )ach 'eenden des

Dialogfensters wird ein Meldungsfenster ausgegebenA das mit +ingabe.length ausgibtA wie

viele #eichen eingegeben wurden.

oString 0 new String?@,eststring@B1

iPaenge 0 oString.length1

  charAt()

Piefert dasjenige #eichen zur4ckA das in einer #eichenkette an einer bestimmten osition

steht. +rwartet als arameter die gew4nschte osition.

oString 0 new String?@,eststring@B1

strundstelle 0 oString.chart?HB1

indexOf()

+rmittelt das erste /orkommen eines #eichens oder einer #eichenkette innerhalb einer

#eichenkette und gibt zur4ckA an wie vielter Stelle das #eichen in der #eichenkette steht. Die

#Uhlung beginnt bei . Wenn die Suche erfolglos istA wird -> zur4ckgegeben.

Optional ist es m:glichA die unktion in einem zweiten arameter anzuweisenA ab der wievielten Stelle in der #eichenkette sie mit der Suche beginnen soll.

oString 0 new String?@,eststring@B1

iosition 0 oString.inde(Of@sts@B1

8/9/2019 JavaScript Grundlagen

http://slidepdf.com/reader/full/javascript-grundlagen 5/26

substr()

+(trahiert aus einer #eichenkette eine ,eilzeichenkette ab einer bestimmten #eichenposition

und mit einer bestimmten PUnge. Qibt die e(trahierte #eichenkette zur4ck. +rwartet folgende

arameter

1.  Index Anfang  0 osition des ersten zu e(trahierenden #eichens in der #eichenketteA wobei

 bei zu zUhlen begonnen wird.

2.  Anzahl Zeichen 0 nzahl #eichenA die e(trahiert werden sollen.

Der zweite arameter ist optional. Wenn Sie ihn weglassenA werden alle #eichen von der

angegebenen osition bis zum +nde der #eichenkette e(trahiert.

oString 0 new String?@,eststring@B1

i,eilstring 0 oString.substr?IA GB1

Wenn-Dann-Bedingungen mit "if"

Sie k:nnen die usf4hrung von nweisungen von 'edingungen abhUngig machen.

var +rgebnis 0 ?document.ormular.+ingabe.value 00 @HF@B @!32,3Q7@ @PS27@1

  document.ormular.+ingabe.value 0 @Die ntwort ist @ = +rgebnis1

Fallunterscheidung mit "switch"

Mit if und else k:nnen Sie genau zwei Ulle unterscheiden. Wenn Sie feiner differenzierenA

also zwischen mehreren Ullen unterscheiden wollenA k:nnen Sie zwar mehrere if-bfragen

hintereinander notierenA aber es gibt noch eine elegantere M:glichkeit die allunterscheidung

mit @switch@. Diese S"nta(A die der rogrammiersprache 2 entlehnt istA gibt es in JavaScript

aber erst seit der Sprachversion >.F - Ultere 'rowser Xuittieren solche nweisungen mit einer

ehlermeldung.

switch ?+ingabeB K

  case @>@

  alert?@Sie sind sehr bescheiden@B1

  break1

  case @F@

  alert?@Sie sind ein aufrichtiger #weibeiner@B1

  break1  case @G@

8/9/2019 JavaScript Grundlagen

http://slidepdf.com/reader/full/javascript-grundlagen 6/26

  alert?@Sie haben ein Dreirad gewonnen@B1

  break1

  case @H@

  alert?@Qehen Sie auf allen /ieren und werden Sie bescheidener@B1

  break1  default

  alert?@Sie bleiben leider dumm@B1

  break1

L

Schleifen mit "while"

Mit ilfe von while-Schleifen k:nnen Sie rogrammanweisungen solange wiederholenA wie

die 'edingungA die in der Schleife formuliert wirdA erf4llt ist. Solche Schleifen eignen sich

dannA wenn Sie nicht wissenA wie oft die Schleife durchlaufen werden soll.

while ?+ingabe 70 @how to make love@ ;; #aehler 80 GB K

  +ingabe 0 window.prompt?#aehler = @. /ersuch Was bedeutet N,MPN@A @@B1

  #aehler==1

L

Schleifen mit "for"

Die Schleifenbedingung einer for-Schleife sieht von vorneherein einen #Uhler und eine

bbruchbedingung vor.

for ?var i 0 >1 i 80 GR1 i==B

  usgabe 0 usgabe = N8span st"le0@font-sizeN = i = Np(@9Schrift mit N =

  i = N i(el Qr;ouml1;szlig1e85%span98br9N1

document.write?usgabeB1

Schleifen mit "do-while"

Die do-while-Schleife ist eine /ariante der normalen while-Schleife. Der *nterschiedzwischen beiden istA dass bei der normalen while-Schleife vor dem usf4hren des 2odes die

Schleifenbedingung 4berpr4ft wirdA wUhrend bei der do-while-Schleife zuerst der 2ode

ausgef4hrt und erst danach die Schleifenbedingung 4berpr4ft wird. uf diese Weise k:nnen

Sie erzwingenA dass nweisungen innerhalb der Schleife auf jeden all mindestens einmal

ausgef4hrt werdenA auch wenn sich die Schleifenbedingung gleich am nfang als unwahr

herausstellt.

do K

  document.write?@8br9( & ( 0 @ = ?( & (BB1  ( 0 ( = >1

8/9/2019 JavaScript Grundlagen

http://slidepdf.com/reader/full/javascript-grundlagen 7/26

L while ?( 8 >B1

oder 

while ?( 8 >B K  document.write?@8br9( & ( 0 @ = ?( & (BB1

  ( 0 ( = >1

L

Mit break k:nnen Sie eine Schleife sofort beenden. Dazu m4ssen Sie innerhalb des

Schleifenk:rpers eine if-bfrage und abhUngig davon das Wort break als nweisung notieren.

3m 'eispiel bricht die Schleife bereits abA wenn i den Wert G hatA obwohl laut

Schleifenbedingung das ochzUhlen bis R erlaubt ist.

Mit continue erzwingen Sie sofort den nUchsten Schleifendurchlauf.

 Ereignisse

Prozessereignisse

- Alle Formulart!en- wird om Formular ausgel#st

initiali$e-%reignis

Beschreibung

Wird f&r alle Ob'ete initiiert nachdem der Formularentwurf mit Daten$usammengef&hrt wurde*

calculate-%reignis

BeschreibungWird unter den folgenden +mst,nden initiiertWenn der Formularentwurf und die Daten $um fertigen Formular$usammengef&hrt werden*Wenn sich einer der Werte ,ndert on denen die Berechnung abh,ngig ist $* B*der Wert eines bestimmten Feldes es sei denn der berechnete Wert wurde beimAusf&llen des Formulars manuell om Benut$er &berschrieben* Als %rgebnis $eigt

das Ob'et den .&cgabewert des %reignisses an* Die %igenschaften f&r manuell&berschriebene Felder be/nden sich auf der .egisterarte "Wert" der 0alette"Ob'et"*Wenn ein Feld den Fous erliert - $* B* wenn ein Benut$er lict oder die

 1abulatortaste dr&ct um ein Feld $u erlassen*

2eine 3aoutan!assung

alidate-%reignis

Beschreibung

Wird initiiert wenn Formularentwurf und Daten $um Formular $usammengef&hrtwerden und wenn ein Feld den Fous erliert $* B* wenn ein Benut$er lict oderdie 1abulatortaste dr&ct um ein Feld $u erlassen* Dieses %reignis wird 'edes4al ausgel#st wenn sich der Wert eines Feldes ,ndert* 4it Berechnungen und

8/9/2019 JavaScript Grundlagen

http://slidepdf.com/reader/full/javascript-grundlagen 8/26

Sri!ten die auf dem %reignis validate !lat$iert werden lassen sich5ber!r&fungen durchf&hren die s!e$i/scheren 6harater haben als die &ber die.egisterarte "Wert" der 0alette "Ob'et" erf&gbaren 5ber!r&fungen*

Ausgang true oder false

formread-%reignis

BeschreibungWird ausgel#st nachdem Formularentwurf und Daten $usammengef&hrt wurdendas fertige Formular ges!eichert wurde und die%reignisse initialize calculate und validate abgeschlossen sind*

Beschreibung

Wird initiiert wenn Formularentwurf und Daten $usammengef&hrt wurden dasFormular orhanden ist und das 3aout des Formulars

angewendet wurde* 7u diesem 7eit!unt wurde das fertige Formular noch nichtwiedergegeben8 eine Berechnung oder ein Sri!t die b$w*das bei diesem %reignis ausgef&hrt werden soll #nnte das 3aout or derWiedergabe also modi/$ieren* Dieses %reignis tritt auch nachder Formularwiedergabe auf wenn eine Berechnung oder ein Sri!t die Daten,ndert b$w* eine 9nderung des Formulars in Acrobat oderAdobe .eader bewirt*

%reignisse in der Drucerwaltung!re0rint - or Drucausgabe!ost0rint - nach Drucausgabe

%reignisse in der S!eichererwaltung!reSae - or Sicherung!ostSae - nach der Sicherung

%reignisse $um 1hema digitale Signatur!reSign - or der Signatur!ostSign - nach der Signatur

%reignisse um den Datenersand!reSubmit - or dem :erand!ostSubmit - nach dem :ersand

Focusereignisse / Interaktive Ereignisse

 (Feld anlicen oder 1ab 0ositionierung ;6ursor steht im Feld)

8/9/2019 JavaScript Grundlagen

http://slidepdf.com/reader/full/javascript-grundlagen 9/26

8/9/2019 JavaScript Grundlagen

http://slidepdf.com/reader/full/javascript-grundlagen 10/26

Übung 1  Zugreifen auf die erste Instanz eines Textfelds

<<<< 1extfeld=

<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<

data.#subform[0].Textfeld1::initialize - (JavaScrit! client"

$odebloc% 1 &&&& 'ureifen auf die erste )nstanz eines Textfelds&& && Text*ield1.ra+,alue elloTextfeld1.ra+,alue  ello/&& odertis.ra+,alue  ello /

 

Übung 2  Zugreifen auf die erste Instanz eines anderen Textfelds

<<<< 1extfeld= ; 1extfeld ><<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<

<<<< 1extfeld=<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<data.#subform[0].Textfeld1::initialize - (JavaScrit! client"&&&& 'ureifen auf die erste )nstanz eines anderen Textfelds&& && Text*ield1.ra+,alue ello

8/9/2019 JavaScript Grundlagen

http://slidepdf.com/reader/full/javascript-grundlagen 11/26

tis.ra+,alue  Textfeld.ra+,alue/

<<<< 1extfeld> <<<< Formcalc<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<

data.#subform[0].Textfeld::initialize - (*orm$alc! client"

&&&& 'ureifen auf die erste )nstanz eines anderen Textfelds&& 2.ra+,alue  ello&& tis.ra+,alue ello/

<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<data.#subform[0].Textfeld1::calculate - (*orm$alc! client"&&&& 'ureifen auf die erste )nstanz eines anderen Textfelds&& && Text*ield1.ra+,alue ellotis.ra+,alue  Textfeld.ra+,alue/

3nterscied er%ennen

Übung 3  Zugreifen auf ein Feld mit Akzessoren

Eine Zugriffsfunktion, auch Zugriffsmethode, Akzessor  oder im Programmiererjargon getter undsetter  genannt, ist in der  objektorientierten Programmierungeine spezielle Methode, die eine einzelneEigenschaft eines Objekts abfragt oder ändert. Sie sind Teil der ffentlichen Schnittstelle eines Objekts und!erbergen"mplementierungsdetails dieses Objekts. #adurch kann die "mplementierung eines Objektsgeändert $erden, ohne seine ffentliche Schnittstelle zu ändern.

8/9/2019 JavaScript Grundlagen

http://slidepdf.com/reader/full/javascript-grundlagen 12/26

8/9/2019 JavaScript Grundlagen

http://slidepdf.com/reader/full/javascript-grundlagen 13/26

?sichern@

?S!eichern@

8/9/2019 JavaScript Grundlagen

http://slidepdf.com/reader/full/javascript-grundlagen 14/26

%rmitteln des SO4-Asudrucs (Semantisches Ob'et 4odell)

8/9/2019 JavaScript Grundlagen

http://slidepdf.com/reader/full/javascript-grundlagen 15/26

xfa.ost.messae4ox(5ies ist eine 6acrict an den *ormularbenutzer.! 4enutzerfeedbac%! 7"/

8/9/2019 JavaScript Grundlagen

http://slidepdf.com/reader/full/javascript-grundlagen 16/26

testen

000000000000000000000000000000000000000000000000000000000000000000data.8evel195esin.8evel95esin.Textfeld1::initialize - (JavaScrit!client"tis.ra+,alue   xfa.resolve6ode(5T.)9S$;;.5T[1].$;;)5".ra+,alue/

resolveNode

Wertet den angegebenen Referenz-Syntaxausdruck aus, angefangen mit dem aktuellen Obekt des !"#-$ormularobektmodells,

und gibt den Wert des im Referenz-Syntaxausdruck angegebenen Obekts zur%ck&

'ie Suc(e nac( einem Obekt beginnt an einer anderen Stelle in der $ormular(ierarc(ie, ab()ngig davon, *ie auf die

resolveNode-Eigensc(aft zugegriffen *urde+

tis.resolve6ode(" 'ie Suc(e beginnt beim aktuellen Obekt und setzt sic( nac( oben in der

$ormular(ierarc(ie fort&

xfa.resolve6ode(" 'ie Suc(e beginnt oben in der $ormular(ierarc(ie und setzt sic( nac( unten fort&

testen

Übung4 Zwischensummen ausgeben

8/9/2019 JavaScript Grundlagen

http://slidepdf.com/reader/full/javascript-grundlagen 17/26

eld #wischensumme und ,otal definieren ?DezimalfeldB

8/9/2019 JavaScript Grundlagen

http://slidepdf.com/reader/full/javascript-grundlagen 18/26

eld #wischensumme berechnen

var fields xfa.la<out.ae$ontent(xfa.la<out.ae(tis"-1! field! 0"/

Y-O!M*P!+3n der D-Spezifikation >.I wurde in D die *nterst4tzung von interaktiven ormularen eingef4hrtA die auf der YMP-rchitektur basieren. Y ??YMP orms rchitectureB enthUlt die 3nformationen 4ber das ormular ineinem YMP-Datenstrom. Die wesentlichen 3nhalte sind die ormularvorlage ?unter anderem elderA'erechnungenA /alidierungenA ormatierungBA die ormulardaten sowie 3nformationen zur $onfigurationA die das

#usammenspiel der ormularvorlage mit den verbundenen Daten steuert. Y wurde von dem kanadischen*nternehmen Jetorm insbesondere f4r die /erwendung in Webformularen entwickelt. dobe erwarb das*nternehmen im Jahr FF und f4hrte Y spUter in seine D-Spezifikation und in die darauf basierendencrobat-/ersionen R und T ein.

pageContent

Ruft $ormularent*urfsobekttyen von einer angegebenen Seite eines $ormulars ab&

ae$ontent( )6T=>=;  param1 [! ST;)6>  param2 [! 4??8=6  param3 ] ] "

 param1

 

Eine anzza(l, die die ge*%nsc(te Seitenza(l darstellt& 'ieser Wert ist .-basiert&

 param2

ibt die folgenden /ontainertyen zur%ck+

field

ibt die folgenden $ormularent*urfsobekte zur%ck+ Sc(altfl)c(en, 0ontrollk)stc(en, 'atums-12(rzeitfelder,

'rodo*n-#isten, 2ntersc(riftsfelder, 3ildfelder, #istenfelder, numerisc(er $elder, 0enn*ortfelder, Otionsfelder

und 4extfelder&

dra+

ibt die folgenden $ormularent*urfsobekte zur%ck+ 0reis, #inie, Rec(teck, statisc(es 3ild, statisc(er 4ext&

Teilformular

8/9/2019 JavaScript Grundlagen

http://slidepdf.com/reader/full/javascript-grundlagen 19/26

ibt alle subform-$ormularent*urfsobekte zur%ck&

area

ibt alle area-$ormularent*urfsobekte zur%ck&

age5rea

ibt alle age5rea-$ormularent*urfsobekte zur%ck&

contentrea

ibt alle content5rea-$ormularent*urfsobekte zur%ck&

emt< 6Standard7

ibt alle /ontainer zur%ck&

 param3

true @ 1 68avaScrit7 oder 1 6$orm/alc7 6Standard7

ibt nur age5rea-In(alts-Nodes zur%ck&

false @ 0 68avaScrit7 oder 0 6$orm/alc7

ibt alle Nic(t-age5rea-In(alts-Nodes zur%ck&6'atenfelder7

 1oen<<<<<<<<<<<<<<<<<<ar total < 8<<<<<<<<<<<<<<<<<<<Ein Datentyp definiert Werte& 3eisiels*eise l)sst der 'atenty 93oolean: z*ei Werte zu+true und false& Neben dem

'atenty 93oolean: definiert 5ctionScrit ;&. *eitere ()ufig ver*endete 'atentyen *ie 9String:, 9Number: und 95rray:& Sie

k<nnen I(re eigenen 'atentyen definieren& 5lle Werte in 5ctionScrit ;&. sind Obekte, unab()ngig davon, ob es sic( um

rund*erte oder um komlexe Werte (andelt& Ein Grundwert  ist ein Wert, der einem der folgenden 'atentyen ange(<rt+

 93oolean:, 9int:, 9Number:, 9String: und 9uint:& =org)nge mit rund*erten sind in der Regel sc(neller als =org)nge mit

komlexen Werten, da rund*erte in 5ctionScrit so geseic(ert *erden, dass Seic(er- und esc(*indigkeitsotimierungen

m<glic( sind&

'ie runddatentyen umfassen 93oolean:, 9int:, 9Null:, 9Number:, 9String:, 9uint: und 9void:& 'ar%ber (inaus definieren die

5ctionScrit-0ernklassen die folgenden komlexen 'atentyen+ Obect, 5rray, 'ate, Error, $unction, RegEx, !"# und !"##ist&

3oolean-'atenty

'er 3oolean-'atenty bein(altet z*ei Werte+ true und false& $%r =ariable des 4y 93oolean: sind keine anderen Werte

zul)ssig& 'er Standard*ert einer 3oolean-=ariablen, die z*ar deklariert, edoc( nic(t initialisiert *urde, lautet false&

int-'atenty'er 'atenty 9int: *ird intern als anzza(l mit ;> 3it geseic(ert und umfasst anzza(len im 3ereic( von

8/9/2019 JavaScript Grundlagen

http://slidepdf.com/reader/full/javascript-grundlagen 20/26

->&?@A&@B;&C@B 6->;?7 bis einsc(lieDlic( >&?@A&@B;&C@A 6>;? - ?7& $r%(ere =ersionen von 5ctionScrit boten lediglic( den

'atenty 9Number:, der so*o(l f%r anzza(len als auc( f%r leitkommaza(len ver*endet *urde& In 5ctionScrit ;&. k<nnen

Sie etzt auc( auf untergeordnete "asc(inentyen f%r ;>-3it-anzza(len mit und o(ne =orzeic(en zugreifen& Wenn f%r eine

=ariable keine leitkommaza(len ver*endet *erden, bietet der 'atenty 9int: eine (<(ere esc(*indigkeit und Effizienz als der

'atenty 9Number:&

$%r ganzza(lige Werte auDer(alb des 3ereic(s f%r int-Werte ver*enden Sie den 'atenty 9Number:, der Werte z*isc(enlus1minus &..A&?&>F@&A@.&> 6ganzza(lige Werte mit F; 3it7 verarbeiten kann& 'er Standard*ert f%r =ariable des

'atentys 9int: lautet .&

Null-'atenty

'er Null-'atenty umfasst nur den Wert null& 'ies ist der Standard*ert f%r den 'atenty 9String: und alle 0lassen, die

komlexe 'atentyen definieren& Gierzu ge(<rt auc( die Obect-0lasse& 0einer der anderen runddatentyen, *ie 93oolean:,

 9Number:, 9int: und 9uint:, ent()lt den Wert null& $las( Hlayer und 5dobe 5IR *andeln den Wert null in den

entsrec(enden Standard*ert um, *enn Sie versuc(en, =ariable des 4ys 93oolean:, 9Number:, 9int: oder 9uint: den

Wert null zuzu*eisen& Sie k<nnen diesen 'atenty nic(t als 4yanmerkung ver*enden&

Number-'atenty

In 5ctionScrit ;&. kann der 'atenty 9Number: anzza(len, vorzeic(enlose anzza(len und leitkommaza(len darstellen& 2m

die #eistung zu maximieren, sollten Sie den 'atenty 9Number: edoc( nur f%r ganzza(lige Werte gr<Der als die Seic(ergrenze

f%r int- und uint-4yen mit ;> 3it oder f%r leitkommaza(len ver*enden& um Seic(ern als leitkommaza(l m%ssen Sie

mit der a(l ein 'ezimalzeic(en angeben& O(ne das 'ezimalzeic(en *ird die a(l als anzza(l geseic(ert&

'er 'atenty 9Number: ver*endet eine leitkommaza(l nac( dem IEEE Standard for 3inary $loating-Hoint 5rit(metic 6IEEE-

AF@7 mit doelter enauigkeit 6C@ 3it7& 'ieser Standard legt fest, *ie leitkommaza(len mit C@ verf%gbaren 3its geseic(ert

*erden& Ein 3it legt fest, ob die a(l ositiv oder negativ ist& ?? 3it *erden f%r den Exonenten ver*endet, der als 3asis >

geseic(ert *ird& 'ie verbleibenden F> 3it *erden zum Seic(ern des Signifikand  6auc( alsMantisse bezeic(net7 ver*endet&

'ies ist die a(l, die durc( den Exonenten otenziert *ird&

Indem einige 3its zum Seic(ern eines Exonenten ver*endet *erden, kann der 'atenty 9Number: *esentlic( gr<Dere

leitkommaza(len seic(ern, als *enn alle 3its f%r die "antisse ver*endet *erden& W%rde der 'atenty 9Number: alle C@ 3it

zum Seic(ern der "antisse ver*enden, k<nnte lediglic( eine a(l in der r<De von >CF -? geseic(ert *erden& Indem ?? 3it

zum Seic(ern eines Exonenten ver*endet *erden, kann der 'atenty 9Number: die "antisse bis zu einer Hotenz von

>?.>; an(eben&

'ie G<c(st- und "indest*erte, die der 'atenty 9Number: darstellen kann, sind in den statisc(en Eigensc(aften der Number-

0lasse namens 6umber.AB9,83= und6umber.A)69,83= geseic(ert&

String-'atenty

'er 'atenty 9String: stellt eine eic(enfolge von ?C 3it dar& Strings *erden intern als 2nicode-eic(en im $ormat 24$-?C

geseic(ert& Strings sind, ebenso *ie in der Hrogrammiersrac(e 8ava, unver)nderlic(e Werte& Eine Oeration mit einem

String*ert liefert eine neue Instanz des Strings& 'er Standard*ert f%r eine =ariable, die mit dem 'atenty 9String: deklariertist, lautet null& 'er Wert null ist nic(t das leic(e *ie eine leere eic(enfolge 67, ob*o(l beide das Nic(tvor(andensein

von eic(en darstellen&

uint-'atenty

'er 'atenty 9uint: *ird intern als vorzeic(enlose anzza(l mit ;> 3it geseic(ert und umfasst anzza(len im 3ereic( von .

bis einsc(lieDlic( @&>@&CA&>F 6>;> - ?7& Sie ver*enden den 'atenty 9uint: f%r Sonderf)lle, die nic(t-negative anzza(len

verlangen& 3eisiels*eise m%ssen Sie den 'atenty 9uint: zur 'arstellung von $arb*erten f%r Hixel ver*enden, da der 'atenty

 9int: ein internes =orzeic(en-3it umfasst, das f%r die =erarbeitung von $arb*erten nic(t geeignet ist& $%r ganzza(lige Werte

gr<Der als der uint-G<c(st*ert ver*enden Sie den 'atenty 9Number:, der ganzza(lige Werte mit F; 3it verarbeiten kann& 'er

Standard*ert f%r =ariablen des 'atentys 9uint: lautet .&

=oid-'atenty

'er 'atenty 9void: umfasst nur den Wert undefined& In fr%(eren =ersionen von 5ctionScrit *ar undefined der

Standard*ert f%r Instanzen der Obect-0lasse& In 5ctionScrit ;&. lautet der Standard*ert f%r Obect-Instanzen null& Wenn

8/9/2019 JavaScript Grundlagen

http://slidepdf.com/reader/full/javascript-grundlagen 21/26

Sie versuc(en, einer Instanz der Obect-0lasse den Wert undefined zuzu*eisen, *andelt $las( Hlayer oder 5dobe 5IR diesen

Wert in null um& 'er Wert undefined kann nur nic(t tyisierten =ariablen zuge*iesen *erden& Nic(t tyisierte =ariablen

sind =ariablen, denen ent*eder eine 4yanmerkung fe(lt oder die das Sternc(en-Symbol 6C7 als 4yanmerkung ver*enden& Sie

k<nnen void nur als R%ckgabe-4yanmerkung ver*enden&

Obect-'atenty

'er Obect-'atenty *ird von der Obect-0lasse definiert& 'ie Obect-0lasse dient als 3asisklasse f%r alle 0lassendefinitionen in

5ctionScrit& 'er 'atenty 9Obect: in 5ctionScrit ;&. untersc(eidet sic( vom 'atenty 9Obect: in fr%(eren =ersionen in

dreifac(er Ginsic(t& un)c(st einmal ist der 'atenty 9Obect: nic(t me(r der Standarddatenty, der =ariablen o(ne

4yanmerkung zuge*iesen *ird& *eitens ent()lt der 'atenty 9Obect: nic(t me(r den Wert undefined, der als

Standard*ert f%r Obect-Instanzen ver*endet *urde& 'rittens lautet der Standard*ert f%r Instanzen der Obect-0lasse in

5ctionScrit ;&. etztnull&

4oken

JJJJJJJJJJJJJJJJJJJJJJJJJJJJJJ

for (var i0/ i D fields.lent-1/ iEE" Fif (fields.item(i".name G;)$=" Ftotal total E fields.item(i".ra+,alue/HHtis.ra+,alue total/

JJJJJJJJJJJJJJJJJJJJJJJJJJJJJ

Übung4 Totale berechnen

8/9/2019 JavaScript Grundlagen

http://slidepdf.com/reader/full/javascript-grundlagen 22/26

ls bscnitt ruieren

f Teilformular einstellen

8/9/2019 JavaScript Grundlagen

http://slidepdf.com/reader/full/javascript-grundlagen 23/26

%instellung =

%instellung >

%instellung

%instellung C

8/9/2019 JavaScript Grundlagen

http://slidepdf.com/reader/full/javascript-grundlagen 24/26

 1esten

%rgebnis

Übung5 Steuerung neue Seite

Abschnitt 0aginierung in der Daten$eile bearbeiten

Atiieren 1est

8/9/2019 JavaScript Grundlagen

http://slidepdf.com/reader/full/javascript-grundlagen 25/26

Übung5 Elemente ausblenden

"n %a!aScript und &orm'alc $ird mit der Pr(fung eines &eld$ertes auf )null) festgestellt, ob ein &eld initial ist oder nicht.

#as *+*P-ui!alent ist )if feld is initial. ... endif.)

/ier soll das (bergeordnete Teilformular ausgeblendet $erden, $enn das &eld nicht gef(llt 0initial1 ist.

if (tis.ra+,alue null" F

  tis.arent.resence idden/

  H

if (2 null" ten

  2.arent.resence idden

 endif

"n!isible

&eld unsichtbar machen. #er Platz bleibt bestehen.

*eldname.resence invisible/

/idden

&eld unsichtbar machen. #er Platz r(ckt auf.

*eldname.resence idden/

StringOperationen in %a!aScript

length

s,ariable Testfall/

i'eicenzal s,ariable.lent/ && liefert I

substr 

s,ariable Testfall/

s,ariable.substr(7! "/ && liefert tf

8/9/2019 JavaScript Grundlagen

http://slidepdf.com/reader/full/javascript-grundlagen 26/26

charAt

s,ariable Testfall/

s,ariable.cart("/ && liefert f

StringOperationen in &orm'alc

Len

s,ariable Testfall

i'eicenzal 8en(s,ariable" && liefert I

Substr 

s,ariable Testfall

Substr(s,ariable! 7 " && liefert tf

At

s,ariable Testfall

t(s,ariable! fa" && liefert

t(s,ariable! beis && liefert 0 (%ein =rebnis"

nwendungsereignisse

- dobe !eader oder crobat l:st die +reignisse aus

3nteraktive +reignisse

- +reignisse treten bei interaktiven ormularen auf