intTypePromotion=1
zunia.vn Tuyển sinh 2024 dành cho Gen-Z zunia.vn zunia.vn
ADSENSE

Nhập môn JavaScript: Phần 1 - ĐH Quốc Gia Hà Nội

Chia sẻ: Nguyên Hoàng | Ngày: | Loại File: PDF | Số trang:39

54
lượt xem
9
download
 
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

Nhập môn JavaScript phần 1 gồm 3 chương: Lời nói đầu, Nhập môn JavaScript, Biến trong JavaScript. Với 3 chương đầu sẽ giúp sơ lược hiểu rõ về JavaScript và một số thao tác với ngôn ngữ này. Xem tiếp phần 2 để có thể thực hành hiệu quả với Java.

Chủ đề:
Lưu

Nội dung Text: Nhập môn JavaScript: Phần 1 - ĐH Quốc Gia Hà Nội

  1. JavaScript 1 ch¬ng 1 Lêi nãi ®Çu Víi HTML and Microsoft FrontPage b¹n ®· biÕt c¸ch t¹o ra trang Web - tuy nhiªn chØ míi ë møc biÓu diÔn th«ng tin chø cha ph¶i lµ c¸c trang Web ®éng cã kh¶ n¨ng ®¸p øng c¸c sù kiÖn tõ phÝa ngêi dïng. H·ng Netscape ®· ®a ra ng«n ng÷ script cã tªn lµ LiveScript ®Ó thùc hiÖn chøc n¨ng nµy. Sau ®ã ng«n ng÷ nµy ®îc ®æi tªn thµnh JavaScript ®Ó tËn dông tÝnh ®¹i chóng cña ng«n ng÷ lËp tr×nh Java. MÆc dï cã nh÷ng ®iÓm t¬ng ®ång gi÷a Java vµ JavaScript, nhng chóng vÉn lµ hai ng«n ng÷ riªng biÖt. JavaScript lµ ng«n ng÷ díi d¹ng script cã thÓ g¾n víi c¸c file HTML. Nã kh«ng ®îc biªn dÞch mµ ®îc tr×nh duyÖt diÔn dÞch. Kh«ng gièng Java ph¶i chuyÓn thµnh c¸c m· dÔ biªn dÞch, tr×nh duyÖt ®äc JavaScript díi d¹ng m· nguån. ChÝnh v× vËy b¹n cã thÓ dÔ dµng häc JavaScript qua vÝ dô bëi v× b¹n cã thÓ thÊy c¸ch sö dông JavaScript trªn c¸c trang Web. JavaScript lµ ng«n ng÷ dùa trªn ®èi tîng, cã nghÜa lµ bao gåm nhiÒu kiÓu ®èi tîng, vÝ dô ®èi tîng Math víi tÊt c¶ c¸c chøc n¨ng to¸n häc. Tuy vËy JavaScript kh«ng lµ ng«n ng÷ h- íng ®èi tîng nh C++ hay Java do kh«ng hç trî c¸c líp hay tÝnh thõa kÕ. JavaScript cã thÓ ®¸p øng c¸c sù kiÖn nh t¶i hay lo¹i bá c¸c form. Kh¶ n¨ng nµy cho phÐp JavaScript trë thµnh mét ng«n ng÷ script ®éng. Gièng víi HTML vµ Java, JavaScript ®îc thiÕt kÕ ®éc lËp víi hÖ ®iÒu hµnh. Nã cã thÓ ch¹y trªn bÊt kú hÖ ®iÒu hµnh nµo cã tr×nh duyÖt hç trî JavaScript. Ngoµi ra JavaScript gièng Java ë khÝa c¹nh an ninh: JavaScript kh«ng thÓ ®äc vµ viÕt vµo file cña ngêi dïng. C¸c tr×nh duyÖt web nh Nescape Navigator 2.0 trë ®i cã thÓ hiÓn thÞ nh÷ng c©u lÖnh JavaScript ®îc nhóng vµo trang HTML. Khi tr×nh duyÖt yªu cÇu mét trang, server sÏ göi ®Çy ®ñ néi dung cña trang ®ã, bao gåm c¶ HTML vµ c¸c c©u lÖnh JavaScript qua m¹ng tíi client. Client sÏ ®äc trang ®ã tõ ®Çu ®Õn cuèi, hiÓn thÞ c¸c kÕt qu¶ cña HTML vµ xö lý c¸c c©u lÖnh JavaScript khi nµo chóng xuÊt hiÖn. C¸c c©u lÖnh JavaScript ®îc nhóng trong mét trang HTML cã thÓ tr¶ lêi cho c¸c sù kiÖn cña ngêi sö dông nh kÝch chuét, nhËp vµo mét form vµ ®iÒu híng trang. VÝ dô b¹n cã thÓ kiÓm tra c¸c gi¸ trÞ th«ng tin mµ ngêi sö dông ®a vµo mµ kh«ng cÇn ®Õn bÊt cø mét qu¸ tr×nh truyÒn trªn m¹ng nµo. Trang HTML víi JavaScript ®îc nhóng sÏ kiÓm tra c¸c gi¸ trÞ ®îc ®a vµo vµ sÏ th«ng b¸o víi ngêi sö dông khi gi¸ trÞ ®a vµo lµ kh«ng hîp lÖ. Môc ®Ých cña phÇn nµy lµ giíi thiÖu vÒ ng«n ng÷ lËp tr×nh JavaScript ®Ó b¹n cã thÓ viÕt c¸c script vµo file HTML cña m×nh. Khoa Toan tin, §¹i häc Quèc gia Hµ Néi
  2. JavaScript 2 Ch¬ng 2 NhËp m«n JavaScript 2.1.Nhóng JavaScript vµo file HTML B¹n cã thÓ nhóng JavaScript vµo mét file HTML theo mét trong c¸c c¸ch sau ®©y: • Sö dông c¸c c©u lÖnh vµ c¸c hµm trong cÆp thÎ • Sö dông c¸c file nguån JavaScript • Sö dông mét biÓu thøc JavaScript lµm gi¸ trÞ cña mét thuéc tÝnh HTML • Sö dông thÎ sù kiÖn (event handlers) trong mét thÎ HTML nµo ®ã Trong ®ã, sö dông cÆp thÎ ... vµ nhóng mét file nguån JavaScript lµ ®îc sö dông nhiÒu h¬n c¶. 2.1.1.Sö dông thÎ SCRIPT Script ®îc ®a vµo file HTML b»ng c¸ch sö dông cÆp thÎ Chó ý: vµ . C¸c thÎ cã thÓ xuÊt hiÖn trong phÇn hay cña file HTML. NÕu Ghi chó kh«ng ®îc ®Æt trong ®Æt trong phÇn , nã sÏ ®îc t¶i vµ s½n sµng tríc khi cÆp thÎ nh ghi chó trong file Thuéc tÝnh duy nhÊt ®îc ®Þnh nghÜa hiÖn thêi cho thÎ HTML. Có ph¸p lµ “LANGUAGE=“ dïng ®Ó x¸c ®Þnh ng«n ng÷ cña JavaScript t¬ng tù có ph¸p script ®îc sö dông. Cã hai gi¸ trÞ ®îc ®Þnh nghÜa lµ "JavaScript" cña C nªn cã vµ "VBScript". Víi ch¬ng tr×nh viÕt b»ng JavaScript b¹n sö thÓ sö dông // dông có ph¸p sau : // INSERT ALL JavaScript HERE §iÓm kh¸c nhau gi÷a có ph¸p viÕt c¸c ghi chó gi÷a HTML vµ JavaScript lµ cho phÐp b¹n Èn c¸c m· JavaScript trong c¸c ghi chó cña file HTML, ®Ó c¸c tr×nh duyÖt cò kh«ng hç trî cho JavaScript cã thÓ ®äc ®îc nã nh trong vÝ dô sau ®©y: Dßng cuèi cïng cña script cÇn cã dÊu // ®Ó tr×nh duyÖt kh«ng diÔn dÞch dßng nµy díi d¹ng m· JavaScript. C¸c vÝ dô trong ch¬ng nµy kh«ng chøa ®Æc ®iÓm Èn cña JavaScript ®Ó m· cã thÓ dÔ hiÓu h¬n. Khoa Toan tin, §¹i häc Quèc gia Hµ Néi
  3. JavaScript 3 2.1.2. Sö dông mét file nguån JavaScript Thuéc tÝnh SRC cña thÎ cho phÐp b¹n chØ râ file nguån JavaScript ®îc sö dông (dïng ph¬ng ph¸p nµy hay h¬n nhóng trùc tiÕp mét ®o¹n lÖnh JavaScript vµo trang HTML). Có ph¸p: .... Thuéc tÝnh nµy rÊy h÷u dông cho viÖc chia sÎ c¸c hµm dïng chung cho nhiÒu trang kh¸c nhau. C¸c c©u lÖnh JavaScript n»m trong cÆp thÎ vµ cã chøa thuéc tinh SRC trõ khi nã cã lçi. VÝ dô b¹n muèn ®a dßng lÖnh sau vµo gi÷a cÆp thÎ vµ : document.write("Kh«ng t×m thÊy file JS ®a vµo!"); Thuéc tÝnh SRC cã thÓ ®îc ®Þnh râ b»ng ®Þa chØ URL, c¸c liªn kÕt hoÆc c¸c ®êng dÉn tuyÖt ®èi, vÝ dô: C¸c file JavaScript bªn ngoµi kh«ng ®îc chøa bÊt kú Chó ý thÎ HTML nµo. Chóng chØ ®îc chøa c¸c c©u lÖnh JavaScript vµ ®Þnh nghÜa hµm. Khi b¹n muèn chØ ra mét x©u trÝch dÉn Tªn file cña c¸c hµm JavaScript bªn ngoµi cÇn cã ®u«i trong mét x©u kh¸c .js, vµ server sÏ ph¶i ¸nh x¹ ®u«i .js ®ã tíi kiÓu MIME cÇn sö dông dÊu nh¸y ®¬n ( ' ) ®Ó ph©n application/x-javascript. §ã lµ nh÷ng g× ®Þnh x©u ®ã. §iÒu mµ server göi trë l¹i phÇn Header cña file HTML. §Ó nµy cho phÐp script ¸nh x¹ ®u«i nµy vµo kiÓu MIME, ta thªm dßng sau vµo nhËn ra x©u ký tù file mime.types trong ®êng dÉn cÊu h×nh cña server, sau ®ã khëi ®éng l¹i server: type=application/x-javascript NÕu server kh«ng ¸nh x¹ ®îc ®u«i .js tíi kiÓu MIME application/x-javascript , Navigator sÏ t¶i file JavaScript ®îc chØ ra trong thuéc tÝnh SRC vÒ kh«ng ®óng c¸ch. Trong vÝ dô sau, hµm bar cã chøa x©u "left" n»m trong mét cÆp dÊu nh¸y kÐp: function bar(widthPct){ document.write(" ") } 2.3. ThÎ vµ CÆp thÎ nµy dïng ®Ó ®Þnh râ néi dung th«ng b¸o cho ngêi sö dông biÕt tr×nh duyÖt kh«ng hç trî JavaScript. Khi ®ã tr×nh duyÖt sÏ kh«ng hiÓu thÎ vµ nã bÞ lê ®i, cßn ®o¹n m· n»m trong cÆp thÎ nµy sÏ ®îc Navigator hiÓn thÞ. Ngîc l¹i, nÕu tr×nh duyÖt cã hç trî JavaScript th× ®o¹n m· trong cÆp thÎ sÏ ®îc bá qua. Tuy nhiªn, ®iÒu nµy còng cã thÓ x¶y ra nÕu ngêi sö dông kh«ng sö dông JavaScript trong tr×nh duyÖt cña m×nh b»ng c¸ch t¾t nã ®i trong hép Preferences/Advanced. Khoa Toan tin, §¹i häc Quèc gia Hµ Néi
  4. JavaScript 4 VÝ dô: Trang nµy cã sö dông JavaScript. Do ®ã b¹n cÇn sö dông tr×nh duyÖt Netscape Navigator tõ version 2.0 trë ®i! H·y kÝch chuét vµo ®©y ®Ó t¶i vÒ phiªn b¶n Netscape míi h¬n NÕu b¹n ®· sö dông tr×nh duyÖt Netscape tõ 2.0 trë ®i mµ vÉn ®äc ®îc dßng ch÷ nµy th× h·y bËt Preferences/Advanced/JavaScript lªn H×nh 2.3: Minh ho¹ thÎ NOSCRIPT 2.3. HiÓn thÞ mét dßng text Trong hÇu hÕt c¸c ng«n ng÷ lËp tr×nh, mét trong nh÷ng kh¶ n¨ng c¬ së lµ hiÓn thÞ ra mµn h×nh mét dßng text. Trong JavaScript, ngêi lËp tr×nh còng cã thÓ ®iÒu khiÓn viÖc xuÊt ra mµn h×nh cña client mét dßng text tuÇn tù trong file HTML. JavaScript sÏ x¸c ®Þnh ®iÓm mµ nã sÏ xuÊt ra trong file HTML vµ dßng text kÕt qu¶ sÏ ®îc dÞch nh c¸c dßng HTML kh¸c vµ hiÓn thÞ trªn trang. H¬n n÷a, JavaScript cßn cho phÐp ngêi lËp tr×nh sinh ra mét hép th«ng b¸o hoÆc x¸c nhËn gåm mét hoÆc hai nót. Ngoµi ra, dßng text vµ c¸c con sè cßn cã thÓ hiÓn thÞ trong trêng TEXT vµ TEXTAREA cña mét form. Trong phÇn nµy, ta sÏ häc c¸ch thøc write() vµ writeln() cña ®èi tîng document . Khoa Toan tin, §¹i häc Quèc gia Hµ Néi
  5. JavaScript 5 §èi tîng document trong JavaScript ®îc thiÕt kÕ s½n hai c¸ch thøc ®Ó xuÊt mét dßng text ra mµn h×nh client: write() vµ writeln(). C¸ch gäi mét c¸ch thøc cña mét ®èi tîng nh sau: object_name.property_name D÷ liÖu mµ c¸ch thøc dïng ®Ó thùc hiÖn c«ng viÖc cña nã ®îc ®a vµo dßng tham sè, vÝ dô: document.write("Test"); document.writeln('Test'); C¸ch thøc write () xuÊt ra mµn h×nh x©u Text nhng kh«ng xuèng dßng, cßn c¸ch thøc writeln() sau khi viÕt xong dßng Text tù ®éng xuèng dßng. Hai c¸ch thøc nµy ®Òu cho phÐp xuÊt ra thÎ HTML. VÝ dô: C¸ch thøc write() xuÊt ra thÎ HTML Ouputting Text This text is plain. Khoa Toan tin, §¹i häc Quèc gia Hµ Néi
  6. JavaScript 6 VÝ dô: Sù kh¸c nhau cña write() vµ writeln(): Khi duyÖt sÏ ®îc kÕt qu¶: H×nh 2.5: Sù kh¸c nhau cña write() vµ writeln() 2.4. Giao tiÕp víi ngêi sö dông JavaScript hç trî kh¶ n¨ng cho phÐp ngêi lËp tr×nh t¹o ra mét hép héi tho¹i. Néi dung cña hép héi tho¹i phô thuéc vµo trang HTML cã chøa ®o¹n script mµ kh«ng lµm ¶nh hëng ®Õn viÖc xuÊt néi dung trang. C¸ch ®¬n gi¶n ®Ó lµm viÖc ®ã lµ sö dông c¸ch thøc alert(). §Ó sö dông ®îc c¸ch thøc nµy, b¹n ph¶i ®a vµo mét dßng text nh khi sö dông document.write() vµ document.writeln() trong phÇn tríc. VÝ dô: alert("NhÊn vµo OK ®Ó tiÕp tôc"); Khoa Toan tin, §¹i häc Quèc gia Hµ Néi
  7. JavaScript 7 Khi ®ã file sÏ chê cho ®Õn khi ngêi sö dông nhÊn vµo nót OK råi míi tiÕp tôc thùc hiÖn Th«ng thêng, c¸ch thøc alert() ®îc sö dông trong c¸c trêng hîp: • Th«ng tin ®a vµ form kh«ng hîp lÖ • KÕt qu¶ sau khi tÝnh to¸n kh«ng hîp lÖ • Khi dÞch vô cha s½n sµng ®Ó truy nhËp d÷ liÖu Tuy nhiªn c¸ch thøc alert () míi chØ cho phÐp th«ng b¸o víi ngêi sö dông chø cha thùc sù giao tiÕp víi ngêi sö dông. JavaScript cung cÊp mét c¸ch thøc kh¸c ®Ó giao tiÕp víi ng- êi sö dông lµ promt() . T¬ng tù nh alert (), prompt () t¹o ra mét hép héi tho¹i víi mét dßng th«ng b¸o do b¹n ®a vµo, nhng ngoµi ra nã cßn cung cÊp mét trêng ®Ó nhËp d÷ liÖu vµo. Ngêi sö dông cã thÓ nhËp vµo trêng ®ã råi kÝch vµo OK. Khi ®ã, ta cã thÓ xö lý d÷ liÖu do ngêi sö dông võa ®a vµo. VÝ dô: Hép héi tho¹i gåm mét dßng th«ng b¸o, mét trêng nhËp d÷ liÖu, mét nót OK vµ mét nót Cancel Ch¬ng tr×nh nµy sÏ hái tªn ngêi dïng vµ sau ®ã sÏ hiÓn thÞ mét th«ng b¸o ng¾n sö dông tªn míi ®a vµo. VÝ dô ®îc lu vµo file Hello.html JavaScript Exemple var name=window.prompt(“Hello! What’s your name ?”,””); document.write(“Hello ” + name + “ ! I hope you like JavaScript ”); Khoa Toan tin, §¹i häc Quèc gia Hµ Néi
  8. JavaScript 8 Khi duyÖt cã kÕt qu¶: H×nh2.1: HiÓn thÞ cöa sæ nhËp tªn VÝ dô nµy hiÓn thÞ dÊu nh¾c nhËp vµo tªn víi ph¬ng thøc window.prompt . Gi¸ trÞ ®¹t ®îc sÏ ®îc ghi trong biÕn cã tªn lµ name. BiÕn name ®îc kÕt hîp víi c¸c chuçi kh¸c vµ ®îc hiÓn thÞ trong cöa sæ cña tr×nh duyÖt nhê ph¬ng thøc document.write . H×nh 2.2: HiÓn thÞ lêi chµo ng­êi nhËp B©y giê b¹n ®· cã ý tëng vÒ c¸c chøc n¨ng cã thÓ ®¹t ®îc qua JavaScript, chóng ta h·y tiÕp tôc t×m hiÓu thªm vÒ chÝnh ng«n ng÷ nµy. Khoa Toan tin, §¹i häc Quèc gia Hµ Néi
  9. JavaScript 9 2.5. §iÓm l¹i c¸c lÖnh vµ më réng LÖnh/Më réng KiÓu M« t¶ SCRIPT thÎ HTML Hép chøa c¸c lÖnh JavaScript SRC Thuéc tÝnh Gi÷ ®Þa chØ cña file JavaScript bªn ngoµi. File nµy cña thÎ ph¶i cã phÇn ®u«i .js SCRIPT LANGUAGE thuéc tÝnh §Þnh râ ng«n ng÷ script ®îc sö dông (JavaScript cña thÎ hoÆc VBScript) SCRIPT // Ghi chó trong §¸nh dÊu ghi chó mét dßng trong ®o¹n script JavaScript /*...*/ Ghi chó trong §¸nh dÊu ghi chó mét khèi trong ®o¹n script JavaScript document.write() c¸ch thøc XuÊt ra mét x©u trªn cöa sæ hiÖn thêi mét c¸ch JavaScript tuÇn tù theo file HTML cã ®o¹n script ®ã document.writeln() C¸ch thøc T¬ng tù c¸ch thøc document.write() nhng viÕt JavaScript xong tù xuèng dßng. alert() C¸ch thøc HiÓn thÞ mét dßng th«ng b¸o trªn hép héi tho¹i cña JavaScript promt() C¸ch thøc HiÓn thÞ mét dßng th«ng b¸o trong hép héi tho¹i JavaScript ®ång thêi cung cÊp mét trêng nhËp d÷ liÖu ®Ó ngêi sö dông nhËp vµo. Khoa Toan tin, §¹i häc Quèc gia Hµ Néi
  10. JavaScript 10 Ch¬ng 3 BiÕn trong JavaScript 3.1. BiÕn vµ ph©n lo¹I biÕn Tªn biÕn trong JavaScript ph¶i b¾t ®Çu b»ng ch÷ hay dÊu g¹ch díi. C¸c ch÷ sè kh«ng ®îc sö dông ®Ó më ®Çu tªn mét biÕn nhng cã thÓ sö dông sau ký tù ®Çu tiªn. Ph¹m vi cña biÕn cã thÓ lµ mét trong hai kiÓu sau: • BiÕn toµn côc: Cã thÓ ®îc truy cËp tõ bÊt kú ®©u trong øng dông. ®îc khai b¸o nh sau : x = 0; • BiÕn côc bé: ChØ ®îc truy cËp trong ph¹m vi ch¬ng tr×nh mµ nã khai b¸o. BiÕn côc bé ®îc khai b¸o trong mét hµm víi tõ kho¸ var nh sau: var x = 0; BiÕn toµn côc cã thÓ sö dông tõ kho¸ var , tuy nhiªn ®iÒu nµy kh«ng thùc sù cÇn thiÕt. 3.2. BiÓu diÔn tõ tè trong JavaScript Tõ tè lµ c¸c gi¸ trÞ trong ch¬ng tr×nh kh«ng thay ®æi. Sau ®©y Chó ý lµ c¸c vÝ dô vÒ tõ tè: Kh¸c víi C, 8 trong JavaScript “The dog ate my shoe” kh«ng cã kiÓu true h»ng sè CONST ®Ó biÓu diÔn mét gi¸ trÞ 3.3. KiÓu d÷ liÖu Kh¸c víi C++ hay Java, JavaScript lµ ng«n ng÷ cã tÝnh ®Þnh kiÓu thÊp. §iÒu nµy cã nghÜa lµ kh«ng ph¶i chØ ra kiÓu d÷ liÖu khi khai b¸o biÕn. KiÓu d÷ liÖu ®îc tù ®éng chuyÓn thµnh kiÓu phï hîp khi cÇn thiÕt. VÝ dô file Variable.Html: Datatype Example var fruit='apples'; var numfruit=12; numfruit = numfruit + 20; var temp ="There are " + numfruit + " " + "."; document.write(temp); Khoa Toan tin, §¹i häc Quèc gia Hµ Néi
  11. JavaScript 11 C¸c tr×nh duyÖt hç trî JavaScript sÏ xö lý chÝnh x¸c vÝ dô trªn vµ ®a ra kÕt qu¶ díi ®©y: Tr×nh diÔn dÞch JavaScript sÏ xem biÕn numfruit cã kiÓu nguyªn khi céng víi 20 vµ cã kiÓu chuçi khi kÕt hîp víi biÓn temp. Trong JavaScript, cã bèn kiÓu d÷ liÖu sau ®©y: kiÓu sè nguyªn, kiÓu dÊu phÈy ®éng, kiÓu logic vµ kiÓu chuçi. 1.1.1. KIÓu nguyªn (Interger) Sè nguyªn cã thÓ ®îc biÓu diÔn theo ba c¸ch: • HÖ c¬ sè 10 (hÖ thËp ph©n) - cã thÓ biÓu diÔn sè nguyªn theo c¬ sè 10, chó ý r»ng ch÷ sè ®Çu tiªn ph¶i kh¸c 0. • HÖ c¬ sè 8 (hÖ b¸t ph©n) - sè nguyªn cã thÓ biÓu diÔn díi d¹ng b¸t ph©n víi ch÷ sè ®Çu tiªn lµ sè 0. • HÖ c¬ sè 16 (hÖ thËp lôc ph©n) - sè nguyªn cã thÓ biÓu diÔn díi d¹ng thËp lôc ph©n víi hai ch÷ sè ®Çu tiªn lµ 0x. 1.1.2. KiÓu dÊu phÈy ®éng (Floating Point) Mét literal cã kiÓu dÊu phÈy ®éng cã 4 thµnh phÇn sau: H×nh 3.1: KÕt qu¶ cña xö lý d÷ liÖu • PhÇn nguyªn thËp ph©n. • DÊu chÊm thËp ph©n (.). • PhÇn d. • PhÇn mò. Khoa Toan tin, §¹i häc Quèc gia Hµ Néi
  12. JavaScript 12 §Ó ph©n biÖt kiÓu dÊu phÈy ®éng víi kiÓu sè nguyªn, ph¶i cã Ýt nhÊt mét ch÷ sè theo sau dÊu chÊm hay E. VÝ dô: 9.87 -0.85E4 9.87E14 .98E-3 1.1.3. KiÓu logic (Boolean) KiÓu logic ®îc sö dông ®Ó chØ hai ®iÒu kiÖn : ®óng hoÆc sai. MiÒn gi¸ trÞ cña kiÓu nµy chØ cã hai gi¸ trÞ • true. • false. 1.1.4. KiÓu chuçi (String) Mét literal kiÓu chuçi ®îc biÓu diÔn bëi kh«ng hay nhiÒu ký tù ®îc ®Æt trong cÆp dÊu " ... " hay '... '. VÝ dô: “The dog ran up the tree” ‘The dog barked’ “100” §Ó biÓu diÔn dÊu nh¸y kÐp ( " ), trong chuçi sö dông ( \" ), vÝ dô: document.write(“ \”This text inside quotes.\” ”); Khoa Toan tin, §¹i häc Quèc gia Hµ Néi
  13. JavaScript 13 2. X©y dùng c¸c biÓu thøc trong JavaScript ®Þnh nghÜa vµ ph©n lo¹I biÓu thøc TËp hîp c¸c literal, biÕn vµ c¸c to¸n tö nh»m ®¸nh gi¸ mét gi¸ trÞ nµo ®ã ®îc gäi lµ mét biÓu thøc (expression). VÒ c¬ b¶n cã ba kiÓu biÓu thøc trong JavaScript: • Sè häc: Nh»m ®Ó lîng gi¸ gi¸ trÞ sè. VÝ dô (3+4)+(84.5/3) ®îc ®¸nh gi¸ b»ng 197.1666666667. • Chuçi: Nh»m ®Ó ®¸nh gi¸ chuçi. VÝ dô "The dog barked" + barktone + "!" lµ The dog barked ferociously!. • Logic: Nh»m ®¸nh gi¸ gi¸ trÞ logic. VÝ dô temp>32 cã thÓ nhËn gi¸ trÞ sai. JavaScript còng hç trî biÓu thøc ®iÒu kiÖn, có ph¸p nh sau: (condition) ? valTrue : valFalse NÕu ®iÒu kiÖn condition ®îc ®¸nh gi¸ lµ ®óng, biÓu thøc nhËn gi¸ trÞ valTrue, ngîc l¹i nhËn gi¸ trÞ valFalse. VÝ dô: state = (temp>32) ? "liquid" : "solid" Trong vÝ dô nµy biÕn state ®îc g¸n gi¸ trÞ "liquid" nÕu gi¸ trÞ cña biÕn temp lín h¬n 32; trong trêng hîp ngîc l¹i nã nhËn gi¸ trÞ "solid". C¸c to¸n tö (operator) To¸n tö ®îc sö dông ®Ó thùc hiÖn mét phÐp to¸n nµo ®ã trªn d÷ liÖu. Mét to¸n tö cã thÓ tr¶ l¹i mét gi¸ trÞ kiÓu sè, kiÓu chuçi hay kiÓu logic. C¸c to¸n tö trong JavaScript cã thÓ ®îc nhãm thµnh c¸c lo¹i sau ®©y: g¸n, so s¸nh, sè häc, chuçi, logic vµ logic bitwise. 2.1.1. G¸n To¸n tö g¸n lµ dÊu b»ng (=) nh»m thùc hiÖn viÖc g¸n gi¸ trÞ cña to¸n h¹ng bªn ph¶i cho to¸n h¹ng bªn tr¸i. Bªn c¹nh ®ã JavaScript cßn hç trî mét sè kiÓu to¸n tö g¸n rót gän. KiÓu g¸n th«ng thêng KiÓu g¸n rót gän x=x+y x+=y x=x-y x-=y x=x*y x*=y x=x/y x/=y x=x%y x%=y 2.1.2. So s¸nh Ngêi ta sö dông to¸n tö so s¸nh ®Ó so s¸nh hai to¸n h¹ng vµ tr¶ l¹i gi¸ trÞ ®óng hay sai phô thuéc vµo kÕt qu¶ so s¸nh. Sau ®©y lµ mét sè to¸n tö so s¸nh trong JavaScript: Khoa Toan tin, §¹i häc Quèc gia Hµ Néi
  14. JavaScript 14 == Tr¶ l¹i gi¸ trÞ ®óng nÕu to¸n h¹ng bªn tr¸i b»ng to¸n h¹ng bªn ph¶i != Tr¶ l¹i gi¸ trÞ ®óng nÕu to¸n h¹ng bªn tr¸i kh¸c to¸n h¹ng bªn ph¶i > Tr¶ l¹i gi¸ trÞ ®óng nÕu to¸n h¹ng bªn tr¸i lín h¬n to¸n h¹ng bªn ph¶i >= Tr¶ l¹i gi¸ trÞ ®óng nÕu to¸n h¹ng bªn tr¸i lín h¬n hoÆc b»ng to¸n h¹ng bªn ph¶i < Tr¶ l¹i gi¸ trÞ ®óng nÕu to¸n h¹ng bªn tr¸i nhá h¬n to¸n h¹ng bªn ph¶i
  15. JavaScript 15 mét trong hai expr1 vµ expr2 ®óng. ! expr Lµ to¸n tö logic NOT phñ ®Þnh gi¸ trÞ cña expr. 2.1.6. Bitwise Víi c¸c to¸n tö thao t¸c trªn bit, ®Çu tiªn gi¸ trÞ ®îc chuyÓn díi d¹ng sè nguyªn 32 bit, sau ®ã lÇn lît thùc hiÖn c¸c phÐp to¸n trªn tõng bit. & To¸n tö bitwise AND, tr¶ l¹i gi¸ trÞ 1 nÕu c¶ hai bit cïng lµ 1. | To¸n tö bitwise OR, tr¶ l¹i gi¸ trÞ 1 nÕu mét trong hai bit lµ 1. ^ To¸n tö bitwise XOR, tr¶ l¹i gi¸ trÞ 1 nÕu hai bit cã gi¸ trÞ kh¸c nhau Ngoµi ra cßn cã mét sè to¸n tö dÞch chuyÓn bitwise. Gi¸ trÞ ®îc chuyÓn thµnh sè nguyªn 32 bit tríc khi dÞch chuyÓn. Sau khi dÞch chuyÓn, gi¸ trÞ l¹i ®îc chuyÓn thµnh kiÓu cña to¸n h¹ng bªn tr¸i. Sau ®©y lµ c¸c to¸n tö dÞch chuyÓn: >2 trë thµnh 4 (sè nhÞ ph©n 10000 trë thµnh sè nhÞ ph©n 100) >>> To¸n tö dÞch ph¶i cã chÌn 0. DÞch chuyÓn to¸n h¹ng tr¸i sang ph¶i mét sè lîng bit b»ng to¸n h¹ng ph¶i. Bit dÊu ®îc dÞch chuyÓn tõ tr¸i (gièng >>). Nh÷ng bit ®îc dÞch sang ph¶i bÞ xo¸ ®i. VÝ dô: -8>>>2 trë thµnh 1073741822 (bëi c¸c bit dÊu ®· trë thµnh mét phÇn cña sè). TÊt nhiªn víi sè d¬ng kÕt qu¶ cña to¸n tö >> vµ >>> lµ gièng nhau. Cã mét sè to¸n tö dÞch chuyÓn bitwise rót gän: KiÓu bitwise th«ng thêng KiÓu bitwise rót gän x = x y x - >> y x = x >>> y x >>> = y x=x&y x&=y x=x^y x^=y x=x|y x|=y Khoa Toan tin, §¹i häc Quèc gia Hµ Néi
  16. JavaScript 16 Bµi tËp 2.1.7. C©u hái H·y ®¸nh gi¸ c¸c biÓu thøc sau: 1. a. 7 + 5 b. "7" + "5" c. 7 == 7 d. 7 >= 5 e. 7 = 5) && (5 > 5) h. (7 >= 5) || (5 > 5) 2.1.8. Tr¶ lêi C¸c biÓu thøc ®îc ®¸nh gi¸ nh sau: 1. a. 12 b. "75" c. true d. true e. true 2. f. 5 g. false h. true Khoa Toan tin, §¹i häc Quèc gia Hµ Néi
  17. JavaScript 17 3. C¸c lÖnh Cã thÓ chia c¸c lÖnh cña JavaScript thµnh ba nhãm sau: • LÖnh ®iÒu kiÖn. • LÖnh lÆp. • LÖnh th¸o t¸c trªn ®èi tîng. C©u lÖnh ®iÒu kiÖn C©u lÖnh ®iÒu kiÖn cho phÐp ch¬ng tr×nh ra quyÕt ®Þnh vµ thùc hiÖn c«ng viÖc nµo ®Êy dùa trªn kÕt qu¶ cña quyÕt ®Þnh. Trong JavaScript, c©u lÖnh ®iÒu kiÖn lµ if...else if ... else C©u lÖnh nµy cho phÐp b¹n kiÓm tra ®iÒu kiÖn vµ thùc hiÖn mét nhãm lÖnh nµo ®Êy dùa trªn kÕt qu¶ cña ®iÒu kiÖn võa kiÓm tra. Nhãm lÖnh sau else kh«ng b¾t buéc ph¶i cã, nã cho phÐp chØ ra nhãm lÖnh ph¶i thùc hiÖn nÕu ®iÒu kiÖn lµ sai. Có ph¸p if ( ) { //C¸c c©u lÖnh víi ®iÒu kiÖn ®óng } else { //C¸c c©u lÖnh víi ®iÒu kiÖn sai } VÝ dô: if (x==10){ document.write(“x b»ng 10, ®Æt l¹i x b»ng 0.”); x = 0; } else document.write(“x kh«ng b»ng 10.”); Chó ý Ký tù { vµ } ®îc sö dông ®Ó t¸ch c¸c khèi m·. C©u lÖnh lÆp C©u lÖnh lÆp thÓ hiÖn viÖc lÆp ®i lÆp l¹i mét ®o¹n m· cho ®Õn khi biÓu thøc ®iÒu kiÖn ®îc ®¸nh gi¸ lµ ®óng. JavaScipt cung cÊp hai kiÓu c©u lÖnh lÆp: Khoa Toan tin, §¹i häc Quèc gia Hµ Néi
  18. JavaScript 18 • for loop • while loop 3.1.1. Vßng lÆp for Vßng lÆp for thiÕt lËp mét biÓu thøc khëi ®Çu - initExpr, sau ®ã lÆp mét ®o¹n m· cho ®Õn khi biÓu thøc ®îc ®¸nh gi¸ lµ ®óng. Sau khi kÕt thóc mçi vßng lÆp, biÓu thøc incrExpr ®îc ®¸nh gi¸ l¹i. Có ph¸p: for (initExpr; ; incrExpr){ //C¸c lÖnh ®îc thùc hiÖn trong khi lÆp } VÝ dô: For loop Example for (x=1; x
  19. JavaScript 19 H×nh 5.1: KÕt qu¶ cña lÖnh for...loop VÝ dô nµy lu vµo file for_loop.Html. Vßng lÆp nµy sÏ thùc hiÖn khèi m· lÖnh cho ®Õn khi x>10. 3.1.2. while Vßng lÆp while lÆp khèi lÖnh chõng nµo cßn ®îc ®¸nh gi¸ lµ ®óng Có ph¸p: while () { //C¸c c©u lÖnh thùc hiÖn trong khi lÆp } VÝ dô: x=1; while (x
  20. JavaScript 20 §o¹n m· sau lÆp cho ®Õn khi x lín h¬n hoÆc b»ng 100. Tuy nhiªn nÕu gi¸ trÞ x ®a vµo vßng lÆp nhá h¬n 50, vßng lÆp sÏ kÕt thóc VÝ dô: while (x
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

Đồng bộ tài khoản
2=>2