1 / 32

JavaScript a gyakorlatban

JavaScript a gyakorlatban. Gyakorlat. Mi a JavaScript? A JavaScript nem Java! JavaScript futtatása JavaScript beillesztése XHTML-be Változók kezelése. Mi a JavaScript?.

caraf
Télécharger la présentation

JavaScript a gyakorlatban

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. JavaScript a gyakorlatban

  2. Gyakorlat • Mi a JavaScript? • A JavaScript nem Java! • JavaScript futtatása • JavaScript beillesztése XHTML-be • Változók kezelése

  3. Mi a JavaScript? • A JavaScriptet a Netscape fejlesztette ki. (Eredeti neve LiveScript.) Ez egy olyan parancsnyelv, amely segítségével létrehozhatunk interaktív Web-oldalakat.

  4. A JavaScript nem Java! • A JavaScript nem tévesztendő össze a Java-val! A hasonló név ellenére a Java önálló programozási nyelv, szükség van fordító programra, amivel a forráslistából bájtkódot készíthetünk. A JavaScript pedig parancsnyelv, futtatásához nem kell más, mint egy böngésző, amely kezelni képes a JavaScriptet. • Hasonlóság azonban nem csak a névben van, ugyanis a két nyelv szintaxisa a C(++) nyelvhez hasonlatos, a manapság divatos objektumorientáltságot pedig egyikük sem kerülhette el.

  5. JavaScript futtatása • Egy JavaScriptet "értő" böngészőre van szükségünk. Ez lehet akár a Netscape Navigator, amely a 2.0-as verzió óta ismeri a JavaScriptet, vagy a Microsoft Internet Explorer (3.0 vagy magasabb verzió). • A böngészők általában „ismerik” a JavaScriptet és képesek azt futtatni.

  6. JavaScript beillesztése XHTML-be JS0101.html <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <htmlxmlns="http://www.w3.org/1999/xhtml" xml:lang="hu" lang="hu"> <head> <title>1.1 feladat</title> </head> <body> <h1>1.1 feladat</h1> <p>Légy üdvözölve! A honlap fejlesztés alatt!</p> </body> </html>

  7. JavaScript beillesztése XHTML-be JS0102.html <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <htmlxmlns="http://www.w3.org/1999/xhtml" xml:lang="hu" lang="hu"> <head> <title>1.2 feladat</title> </head> <body> <h1>1.2 feladat</h1> <p>Légy üdvözölve! A honlap fejlesztés alatt! Legutóbbi módosítás:</p> <script type="text/javascript"> <!-- document.write(document.lastModified); // --> </script> </body> </html> XHTML 1.0 Strict-ben nincs: LANGUAGE=”JavaScript” A régi böngészők elől elrejtjük a JS-kódot! Objektumorientált felépítés, ahol a document jelzi az adott honlapot.

  8. JavaScript beillesztése XHTML-be JS0103.html <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <htmlxmlns="http://www.w3.org/1999/xhtml" xml:lang="hu" lang="hu"> <head> <title>1.3 feladat</title> </head> <body> <h1>1.3 feladat</h1> <p>Légy üdvözölve! A honlap fejlesztés alatt! Legutóbbi módosítás:</p> <script type="text/javascript" src="JS0103.js"></script> </body> </html> JS0103.js // JavaScript document.write(document.lastModified);

  9. JavaScript – változók kezelése JS0104.js JS0105.js // JavaScript now = newDate(); localtime = now.toString(); utctime = now.toGMTString(); document.write("<b>Helyi ido:</b> " + localtime + "<br />"); document.write("<b>UTC ido:</b> "+ utctime); document.write("<b>UTC ido:</b> "+ utctime + "<br />"); hours = now.getHours(); mins = now.getMinutes(); secs = now.getSeconds(); document.write("<font size='+5'>"); document.write(hours + " : " + mins + " : " + secs); document.write("</font>"); JS0106.js // JavaScript text=prompt("Írjunk be valamit!");

  10. JavaScript – változók kezelése JS0107.js // JavaScript for (i=1;i<5;i++){ alert("Még "+(5-i)+" alkalommal írom ki ezt az üzenetet!"); if (i==4) alert("Most azt hiszed, vége? Az Enter után nyomd meg az F5-öt!"); }

  11. 2. Gyakorlat • Függvények • Array (tömb) objektum • String objektum • Elágazások • Ciklusok • Math és Date objektumok

  12. JavaScript - függvények • Minden programozási nyelvben, így a JavaScript-ben is rendkívül fontos szerepet kapnak a függvények. A nyelv számos függvényt tartalmaz, például a korábban megismert alert() függvény is ezek közül való. A függvényeknek adhatunk át paramétereket, amelyekkel dolgozni fognak (az alert() függvény paramétere az idézőjelek között átadott szöveg volt, amit a függvény egy üzenetablakban jelenített meg). Mi magunk is írhatunk függvényeket, hogy a nagyobb, összetettebb feladatokat kisebb, jobban kezelhetőbb részekre bontsuk. Ezek a függvények szintén átvehetnek paramétereket, sőt értéket is adhatnak vissza, csakúgy, mint más programozási nyelvekben.

  13. JavaScript - függvények • A function kulcsszót közvetlenül a függvény neve követi, majd zárójelekben a paramétereket adjuk meg. • A függvény törzse kapcsos zárójelek között van, és ide helyezzük el a függvényhez tartozó utasításokat. • function FuggvenyNeve(parameter1, parameter2, …) { …utasítások… }

  14. JavaScript - függvények • JavaScript-ben a változók neve betűvel, vagy aláhúzással (_) kezdődhet, és a függvénynevekhez hasonlóan szintén különbség van kis- és nagybetűk között. Változót a var kulcsszóval, majd a változó nevének megadásával deklarálhatunk. Deklaráláskor az értékadó operátor (=) segítségével kezdőértéket is rendelhetünk a változókhoz.

  15. JavaScript - függvények Függvény paramétere Függvény neve JS0201.js Függvény // JavaScript function Greet(who){ alert("Hello! "+who+"!"); } Greet("Rita"); Függvény törzse A függvény meghívása JS0202.js // JavaScript vnev=prompt("Vezetéknév megadása:"); knev=prompt("Keresztnév megadása:"); hcim=prompt("A lap címe:"); document.write("<h1>"+hcim+"</h1>"); document.write("<h2>Készítette: "+vnev+" "+knev+"</h2>"); Beépített függvények használata

  16. JavaScript - tömbök • A tömbök rendkívül fontosak a programozásban. Gyakran van szükségünk nagy mennyiségű adat kényelmes tárolására úgy, hogy bármelyikhez könnyen hozzáférjünk. A tömbök sok változóból felépülő összetett adattípusok. Az egyes adatokhoz egy név (a tömb neve) és egy szám segítségével  férhetünk hozzá.

  17. JavaScript - tömbök • Tömböket igen egyszerűen hozhatunk létre: tomb = new Array(), azaz létrehozzuk az Array objektum egy új példányát. A tomb nevű új tömbünkhöz rögtön értékeket is rendelhetünk. tomb[0] = "JavaScript";  tomb[1] = "2000"; tomb[2] = "Aurum";

  18. JavaScript - tömbök tombnev = new Array([a_tomb_hossza]) tombnev = new Array([1.elem, 2.elem, 3.elem, ... ,n.elem]) Az első esetben csak annyi a különbség, hogy adtunk a tömbnek egy kezdeti hossz értéket. Ez a hossz a későbbiek során lekérdezhető az Array objektum length adatmezőjéből. A második esetben zárójeleken belül felsoroltuk a tömb induló értékeit. Ezek később persze szabadon bővíthetők. A szögletes zárójelek ( [ ] ) azt jelentik, hogy a közöttük lévő részek nyugodtan elhagyhatók.

  19. JavaScript – tömbök használata // JavaScript nnev=prompt("Bekérendő szavak száma:"); n=parseInt(nnev); szavak = new Array(n); for (i=0;i<n;i++) { bekeres=prompt((i+1)+". szó bekérése"); szavak[i]=bekeres; } document.write("<h2>A szavak kiírása rendezetlen formában:</h2>"); document.write("<p>"); for (i=0;i<n;i++) { document.write(szavak[i]+", "); } document.write("</p>"); szavak.sort(); document.write("<h2>A szavak kiírása rendezett formában:</h2>"); document.write("<p>"); for (i=0;i<n;i++) { document.write(szavak[i]+", "); } document.write("</p>"); JS0203.js

  20. Array (tömb) objektum – legfontosabb metódusok AutoTipusok = new Array("Honda","Mercedes","BMW"); Az Array objektum legfontosabb metódusai a következők: • a join metódus összefűzi a tömb elemeit egyetlen sztringgé • a reverse megfordítja (transzponálja) a tömb elemeit, az utolsóból lesz az első, az elsőből az utolsó • a sort rendezi a tömb elemeit • Az előző példánál maradva vizsgáljuk meg ezeket a metódusokat: • AutoTipusok.join() a "Honda,Mercedes,BMW" sztringet adja vissza • AutoTipusok.reverse() megfordítja a sorrendet (AutoTipusok[0] a BMW lesz, AutoTipusok[1] a Mercedes. míg AutoTipusok[2] a Honda) • Autotipusok.sort() rendezi a tömböt, igy a tömbünk a következő módon változik meg: AutoTipusok[0] a BMW lesz, AutoTipusok[1] a Honda, a Mercedes pedig az AutoTipusok[2]

  21. String objektum • JavaScript-ben nem létezik sztring adattípus. Helyette viszont létezik a String objektum, melynek számos hasznos metódusa is van. Ezekkel könnyedén  manipulálhatjuk a sztringünket. • String objektumot a következő módon hozhatunk létre: String_objektum_neve = new String(sztring); A zárójelben tetszőleges sztring állhat, ez lesz tulajdonképpen az új String objektum. szoveg = new String("JavaScript"); • A String objektumnak van egy length nevű adatmezője, amelyből kiolvashatjuk a tárolt sztring hosszát. • A String objektum metódusai két típusba sorolhatók. Az egyik típus a sztring egy módosított változatát adja vissza. Ide tartozik például a subString és a toLowerCase metódusok. Az előbbi a sztring egy részét adja vissza, míg az utóbbi kisbetűsre alakítja azt. A másik típushoz olyan metódusok tartoznak, amelyek HTML formátumúra hozzák a sztringet. Ilyen például a bold, ill. a link függvény.

  22. String objektum

  23. String objektum • Az eredeti sztring: JavaScriptszoveg.length = 10szoveg.substring(3,8) = aScriszoveg.toUpperCase() = JAVASCRIPTszoveg.toLowerCase() = javascriptszoveg.charAt(0) = Jszoveg.charAt(4) = Sszoveg.indexOf('S') = 4szoveg.indexOf('s') = -1szoveg.lastIndexOf('S') = 4szoveg.lastIndexOf('s') = -1

  24. String objektum • szoveg.link('http://www.netscape.com') = JavaScriptszoveg.big() = JavaScriptszoveg.blink() = JavaScriptszoveg.bold() = JavaScriptszoveg.fixed() = JavaScriptszoveg.italics() = JavaScriptszoveg.small() = JavaScriptszoveg.strike() = JavaScriptszoveg.sub() = JavaScriptszoveg.sup() = JavaScript

  25. JavaScript – stringkezelés JS0204.js // JavaScript msg=prompt("Görgetendő szöveg"); msg="... ..."+msg; pos=0; function ScrollMessage(){ window.status = msg.substring(pos,msg.length) + msg.substring(0,pos); pos++; if (pos>msg.length) pos = 0; window.setTimeout("ScrollMessage()",200); } ScrollMessage();

  26. JavaScript – elágazások // JavaScript where=prompt("Where do you want to go today?"); switch(where){ case "Microsoft": window.location="http://www.microsoft.com"; break; case "Google": window.location="http://www.google.com"; break; case "Mozilla": window.location="http://www.mozilla.org"; break; default: window.location="http://www.uni-pannon.hu"; } JS0205.js

  27. JavaScript - ciklusok // JavaScript names=new Array(); i=0; do { next=window.prompt("Következő név bekérése:",""); if (next>" ") names[i]=next; i++; } while (next > " "); document.write("<h2>"+(names.length)+" nevet írtunk be.</h2>"); document.write("<ol>"); for (i in names) { document.write("<li>"+names[i]+"</li>"); } document.write("</ol>"); JS0206.js

  28. A Date (dátum) objektum • Nagyon hasznos előre definiált objektum. Segítségével olyan alkalmazásokat írhatunk, amelyek idő- vagy dátumértékeket kezelnek. Bizonyára mindenki találkozott már olyan oldallal, amely mutatta a pontos időt, illetve a dátumot. Ezeket is JavaScript programok számolják ki és jelenítik meg. • Az alábbi módon hozhatjuk létre a Date objektum új példányait: dátum_objektum_neve = new Date( [paraméterek] );

  29. A Date (dátum) objektum A paraméter a következő variációk bármelyike lehet: • Nem adunk meg paraméterként semmit. Ekkor az aktuális dátum és idő értékeket használjuk fel. Például: • ma = new Date(); • A paraméter egy sztring, ami egy dátumot reprezentál a következő formában: "Hónap Nap, Év óra:perc:másodperc". • Páldául: 07karacsony = new Date("December 25, 2007 12:30:30"); Ha elhagyjuk az óra:perc:másodperc részt, akkor ez automatikusan a 0 értéket veszi fel. • Számokkal adjuk meg a dátumot. Például: 07karacsony = new Date(2007, 11, 24, 12, 30, 30); • a set metódus segítségével beállíthatjuk a dátum és idő értékét (setYear, setMonth, setDate, setMinutes, setSeconds) • a get metódussal kiolvashatjuk ezeket az értékeket (getYear, getMonth, getDate, getMinutes, getSeconds)

  30. A Math (matematikai) objektum • A legtöbb trigonometrikus, exponenciális és logaritmikus függvényt is tartalmazza ez az objektum. Így például egy X szög szinuszát így kaphatjuk meg: Math.sin(X);

  31. A Math (matematikai) objektum • Előfordulhat, hogy véletlenszámra van szükségünk a programunk során. Erre is ad megoldást a Math objektum, mégpedig a random() metódussal. A Math.Random() egy véletlenszámot ad vissza, amely 0 és 1 közé esik. • Célszerű alkalmazni a with utasítást olyan esetekben, amikor a Math objektumra gyakran kell hivatkozni: with (Math){  kor_terulet = PI * r * r;  x = r * sin(beta);  c = sqrt(a*a + b*b);} • Látható, hogy így nem kellett minden Math objektumbeli metódus és konstans elé odaírni a "Math" hivatkozást. Ezzel a kódunk is átláthatóbbá vált.

  32. A Math objektum JS0207.js // JavaScript total = 0; for (i=1; i<=5000; i++) { num = Math.random(); total += num; window.status = i + " szám generálása";} average = total / 5000; average = Math.round(average * 1000) / 1000; document.write("<h2>5000 szám átlaga: " + average + "</h2>");

More Related