JavaScript

1

Giáo trình JavaScript ***
CH CH NG 1 L I NÓI U ................................ ................................ ................................ ........... 4 NG 2 NH P MÔN JAVASCRIPT ................................ ................................ ....................... 5 2.1.Nhúng JavaScript vào file HTML ................................ ................................ .................. 5 2.3. Th <NOScript> và </NOSCRIPT> ................................ ................................ ............. 6 2.3. Hi n th m t dòng text ................................ ................................ ................................ . 7 2.4. Giao ti p v i ng i s d ng................................ ................................ ........................ 9 2.5. i m l i các l nh và m r ng ................................ ................................ .................... 11 NG 3 BI N TRONG JAVASCRIPT ................................ ................................ .................. 13 3.1. Bi n và phân lo I bi n................................ ................................ ............................... 13 3.2. Bi u di n t t trong JavaScript ................................ ................................ ................ 13 3.3. Ki u d li u................................ ................................ ................................ ............... 13 1.1.1. KI u nguyên (Interger) ................................ ................................ ...................... 14 1.1.2. Ki u d u ph y ng (Floating Point) ................................ ................................ . 14 1.1.3. Ki u logic (Boolean)................................ ................................ .......................... 15 1.1.4. Ki u chu i (String) ................................ ................................ ............................ 15 XÂY D NG CÁC BI U TH C TRONG JAVASCRIPT ................................ ................. 16

CH

2.

NH NGH A VÀ PHÂN LO I BI U TH C ................................ ................................ ................ 16 CÁC TOÁN T (OPERATOR) ................................ ................................ ................................ ... 16 2.1.1. Gán ................................ ................................ ................................ .................. 16 2.1.2. So sánh ................................ ................................ ................................ ............ 16 2.1.3. S h c ................................ ................................ ................................ .............. 17 2.1.4. Chu i................................ ................................ ................................ .................. 1 2.1.5. Logic ................................ ................................ ................................ ................ 17 2.1.6. Bitwise ................................ ................................ ................................ .............. 18 BÀI T P ................................ ................................ ................................ ................................ .... 18 2.1.7. Câu h i................................ ................................ ................................ ............. 18 2.1.8. Tr l i ................................ ................................ ................................ ............... 19 3. CÁC L NH ................................ ................................ ................................ ................... 20 CÂU L NH I U KI N ................................ ................................ ................................ .............. 20 CÂU L NH L P................................ ................................ ................................ ......................... 20 3.1.1. Vòng l p for ................................ ................................ ................................ ...... 21 3.1.2. while ................................ ................................ ................................ ................. 22 3.1.3. Break................................ ................................ ................................ ................ 22 3.1.4. continue ................................ ................................ ................................ ........... 23 CÁC CÂU L NH THAO TÁC TRÊN IT NG ................................ ................................ ...... 23 3.1.5. for...in ................................ ................................ ................................ ............... 23 3.1.6. new ................................ ................................ ................................ .................. 24 3.1.7. this ................................ ................................ ................................ ................... 26 3.1.8. with ................................ ................................ ................................ .................. 26 CÁC HÀM (FUNCTIONS) ................................ ................................ ................................ .......... 27 CÁC HÀM CÓ S N ................................ ................................ ................................ ..................... 1 3.1.9. eval ................................ ................................ ................................ .................. 29

JavaScript

2

3.1.10. parseInt ................................ ................................ ................................ ............ 30 3.1.11. parseFloat ................................ ................................ ................................ ........ 31 M NG (ARRAY) ................................ ................................ ................................ ........................ 32 S KI N ................................ ................................ ................................ ................................ ... 33 BÀI T P ................................ ................................ ................................ ................................ .... 37 3.1.12. Câu h i................................ ................................ ................................ ............. 37 3.1.13. Tr l i ................................ ................................ ................................ ............... 38 4. IT IT CÁC IT NG TRONG JAVASCRIPT ................................ ................................ .... 41 NG NAVIGATOR ................................ ................................ ................................ ........ 43 NG WINDOW ................................ ................................ ................................ ............. 44 4.1.1. Các thu c tính ................................ ................................ ................................ .. 44 4.1.2. Các ph ng th c ................................ ................................ ............................. 44 4.1.3. Các ch ng trình x lý s ki n................................ ................................ ......... 46 IT NG LOCATION ................................ ................................ ................................ ........... 46 IT NG FRAME ................................ ................................ ................................ ................ 47 4.1.4. Các thu c tính ................................ ................................ ................................ .. 47 4.1.5. Các ph ng th c ................................ ................................ ............................. 47 4.1.6. S d ng Frame ................................ ................................ ................................ 47 IT NG DOCUMENT ................................ ................................ ................................ ......... 49 4.1.7. Các thu c tính ................................ ................................ ................................ .. 50 4.1.8. Các ph ng th c ................................ ................................ ............................. 50 IT NG ANCHORS ................................ ................................ ................................ ........... 50 IT NG FORMS ................................ ................................ ................................ ................ 50 4.1.9. Các thu c tính ................................ ................................ ................................ .. 51 4.1.10. Các ph ng th c ................................ ................................ ............................. 51 4.1.11. Các ch ng trình x lý s ki n................................ ................................ ......... 51 IT NG HISTORY ................................ ................................ ................................ ............. 51 4.1.12. Các thu c tính ................................ ................................ ................................ .. 51 4.1.13. Các ph ng th c ................................ ................................ ............................. 51 IT NG LINKS ................................ ................................ ................................ ................... 52 4.1.14. Các thu c tính ................................ ................................ ................................ .. 52 4.1.15. Các ch ng trình x lý s ki n................................ ................................ ......... 52 IT NG MATH ................................ ................................ ................................ ................... 52 4.1.16. Các thu c tính ................................ ................................ ................................ .. 52 4.1.17. Các ph ng th c ................................ ................................ ............................. 53 IT NG DATE ................................ ................................ ................................ ................... 53 4.1.18. Các ph ng th c ................................ ................................ ............................. 53 IT NG STRING................................ ................................ ................................ ................ 54 4.1.19. Các ph ng th c ................................ ................................ ............................. 54 CÁC PH N T C A IT NG FORM ................................ ................................ ................. 55 4.1.20. Thu c tính type ................................ ................................ ................................ . 56 4.1.21. Ph n t button................................ ................................ ................................ .. 56 4.1.22. Ph n t checkbox................................ ................................ ............................. 57 4.1.23. Ph n t File Upload ................................ ................................ .......................... 59 4.1.24. Ph n t hidden ................................ ................................ ................................ . 59 4.1.25. Ph n t Password ................................ ................................ ............................ 59 4.1.26. Ph n t radio................................ ................................ ................................ .... 59 4.1.27. Ph n t reset................................ ................................ ................................ .... 61

JavaScript 4.1.28. 5.

3 Ph n t select ................................ ................................ ................................ .. 62 IT NG (OBJECT MODEL) ................................ ................................ .. 71

MÔ HÌNH

IT NG VÀ THU C TÍNH ................................ ................................ ................................ .. 71 T O CÁC IT NG M I ................................ ................................ ................................ ...... 71 5.1.1. S d ng kh i t o i t ng ................................ ................................ .............. 72 5.1.2. S d ng m t hàm xây d ng(Constructor Function)................................ ........... 73 5.1.3. L p m c l c cho các thu c tính c a i t ng ................................ .................. 74 5.1.4. nh ngh a thêm các thu c tính cho m t ki u i t ng ................................ .... 74 5.1.5. nh ngh a các cách th c ................................ ................................ ................. 74 5.1.6. S d ng cho các tham chi u i t ng (Object References) ............................ 75 5.1.7. Xoá i t ng ................................ ................................ ................................ .. 76 6. 7. B NG T NG K T CÁC T KHOÁ ................................ ................................ .............. 77 T NG K T ................................ ................................ ................................ ................... 78

Client s c trang ó t u n cu i. JavaScript là ngôn ng d a trên i t ng. nh p vào m t form và i u h ng trang. Hãng Netscape ã a ra ngôn ng script có tên là LiveScript th c hi n ch c n ng này. 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 trình duy t web nh Nescape Navigator 2. Nó không c biên d ch mà c trình duy t di n d ch. JavaScript c thi t k c l p v i h i u hành. 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. 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. M c dù có nh ng i m t ng ng gi a Java và JavaScript. bao g m c HTML và các câu l nh JavaScript qua m ng t i client.tuy nhiên ch m i m c bi u di n thông tin ch ch a 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. trình duy t c JavaScript d i d ng mã ngu n. 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. Khi trình duy t yêu c u m t trang. ví d i t ng Math v i t t c các ch c n ng toán h c. . nh ng chúng v n là hai ngôn ng riêng bi t. 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. server s g i y n i dung c a trang ó. 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. Kh n n này cho g phép JavaScript tr thành m t ngôn ng script ng. có ngh a là bao g m nhi u ki u i t ng. JavaScript có th áp ng các s ki n nh t i hay lo i b các form. 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 í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.JavaScript 4 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 . Gi ng v i HTML và Java.0 tr i có th hi n th nh ng câu l nh JavaScript c nhúng vào trang HTML. 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 . JavaScript là ngôn ng d i d ng script có th g n v i các file HTML. 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 . Không gi ng Java ph i chuy n thành các mã d biên d ch.

.1. */. S d ng m t file ngu n JavaScript Thu c tính SRC c a th <SCRIPT> cho phép b n ch rõ file ngu n JavaScript cs 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). .</ SCRIPT> và nhúng m t file ngu n JavaScript là c s d ng nhi u h n c . 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. Các th <SCRIPT> có th xu t hi n trong ph n <HEAD> hay <BODY> c a file HTML. N u t trong ph n <HEAD>.JavaScript 5 CH NG 2 NH P MÔN JAVASCRIPT 2.. Cú pháp c a JavaScript t ng t cú pháp c a C nên có th s d ng // hay /* .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 <SCRIPT> 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 ó. 2. 2.. V i ch ng trình vi t b ng JavaScript b n s d ng cú pháp sau : <SCRIPT LANGUAGE=´JavaScript´> // INSERT ALL JavaScript HERE </SCRIPT> Chú ý: Ghi chú không c t trong c p th <. Thu c tính duy nh t c nh ngh a hi n th i cho th <SCRIPT> là ³LANGUAGE=³ dùng xác nh ngôn ng script c s d ng. 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.và -> nh ghi chú trong file HTML. nó s c t i và s n sàng tr c khi ph n còn l i c a v n b n c t i. Có hai giá tr c nh ngh a là "JavaScript" và "VBScript".1.1.S d ng th SCRIPT Script c a vào file HTML b ng cách s d ng c p th <SCRIPT> và <\SCRIPT>.From here the JavaScript code hidden // INSERT ALL JavaScript HERE // This is where the hidden ends --> </SCRIPT> 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.1.2. các trình duy t c không h tr cho JavaScript có th c c nó nh trong ví d sau ây: <SCRIPT LANGUAGE=´JavaScript´> <!-.. s d ng c p th < SCRIPT>.

sau ó kh i ng l i server: N u server không ánh x s t i file JavaScript c ch ra trong thu c tính SRC v không úng cách. 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. Chúng ch c ch a các câu l nh Khi b n mu n ch ra m t xâu JavaScript và nh ngh a hàm. Trong ví d sau.js t i ki u MIME application/x-javascript .com/comprd/mirror/index. ta thêm dòng sau vào file mime.. Ví d b n mu n a dòng l nh sau vào gi a c p th <SCRIPT SRC=".3. Ng c l i. còn o n mã n m trong c p th này s c Navigator hi n th .js...netscape. trích d n trong m t xâu khác c n Tên file c a các hàm JavaScript bên ngoài c n có uôi s d ng d u nháy n ( ' ) .write(" <HR ALIGN='LEFT' WIDTH="+widthPct+"%>") } type=application/x-javascript c uôi . Ví d : <NOSCRIPT> <B> Trang này có s d ng JavaScript.com. n u trình duy t có h tr JavaScript thì o n mã trong c p th <NOSCRIPT> s c b qua. các liên k t ho c các ng d n <SCRIPT SRC=" http://cse.write("Không tìm th y file JS a vào!"). Do ó b n c n s d ng trình duy t Netscape Navigator t version 2. và server s ph i ánh x uôi . Navigator 2. Thu c tính SRC có th tuy t i. ví d : c nh rõ b ng a ch URL.JavaScript 6 Cú pháp: <SCRIPT SRC="file_name.js"> . TH <NOSCRIPT> VÀ </NOSCRIPT> 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.0 tr i! <BR> <A HREF="http://home.vn "> Các file JavaScript bên ngoài không c ch a b t k Chú ý th HTML nào. ó là nh ng gì mà server g i phép script nh n ra xâu ký t ó. ánh x uôi này vào ki u MIME. </SCRIPT> 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. Khi ó trình duy t s không hi u th <NOSCRIPT> và nó b l i. tr l i ph n Header c a file HTML.types trong ng d n c u hình c a server.html"> Hãy kích chu t vào ây t i v phiên b n Netscape m i h n . Tuy nhiên."> và </SCRIPT>: document. i u này cho application/x-javascript. 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..js ó t i ki u MIME phân nh xâu ó. Các câu l nh JavaScript n m trong c p th <SCRIPT> và </SCRIPT> có ch a thu c tinh SRC tr khi nó có l i..

H n n a. 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. 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. 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.writeln('Test'). HI N TH M T DÒNG TEXT Trong h u h t các ngôn ng l p trình. Trong JavaScript. 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().JavaScript </A> </BR> N u b n ã s d ng trình duy t Netscape t 2. c a vào dòng tham s . Ngoài ra. m t trong nh ng kh n ng c s là hi n th ra màn hình m t dòng text.0 tr hãy b t Preferences/Advanced/JavaScript lên </NOSCRIPT> 7 i mà v n c c dòng ch này thì Hình 2.3. document. ví . Trong ph n này.3: Minh ho th NOSCRIPT 2. 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. ta s h c cách th c write() và writeln() c a i t ng document.property_name D li u mà cách th c dùng d : th c hi n công vi c c a nó document.write("Test"). Cách g i m t cách th c c a m t i t ng nh sau: object_name.

").").JavaScript Cách th c write() xu t ra màn hình xâu Text nh ng không xu ng dòng.").</B>").writeln("Two.write(". document.<BR> <B> <SCRIPT LANGUAGE="JavaScript"> <!-. 8 Ví d : Cách th c write() xu t ra th HTML <HTML> <HEAD> <TITLE>Ouputting Text</TITLE> </HEAD> <BODY> This text is plain.HIDE FROM OTHER BROWSERS document.HIDE FROM OTHER BROWSERS document. // STOP HIDING FROM OTHER BROWSERS --> </SCRIPT> </BODY> </HTML> Ví d : S khác nhau c a write() và writeln(): <PRE> <SCRIPT LANGUAGE="JavaScript"> <!-. document..write("This text is bold.writeln("One. document.write("Three "). Hai cách th c này u cho phép xu t ra th HTML. // STOP HIDING FROM OTHER BROWSERS --> .. còn cách th c writeln() sau khi vi t xong dòng Text t ng xu ng dòng.

nh ng ngoài ra nó còn cung c p m t tr ng nh p d .5: S khác nhau c a write() và writeln() 2.write() và document.JavaScript </SCRIPT> </PRE> 9 Khi duy t s c k t qu : Hình 2. Cách n gi n làm vi c ó là s d ng cách th c alert(). 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. Ví d : alert("Nh n vào OK ti p t c"). 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 ch a 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 ch a th c s giao ti p v i ng i s d ng. 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. JavaScript cung c p m t cách th c khác giao ti p v i ng i s d ng là promt(). 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. b n ph i a vào m t dòng text nh khi s d ng document. T ng t nh alert().4. 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. s d ng c cách th c này.writeln() trong ph n tr c.

prompt(³Hello! What¶s your name ?´. Ví d : H p h i tho i g m m t dòng thông báo. </SCRIPT> </HEAD> <BODY> </BODY> </HTML> Khi duy t có k t qu : Hình2.write(³Hello ´ + name + ³ ! I hope you like JavaScript ´).JavaScript 10 li u vào. .´´). Giá tr t cs c ghi trong bi n có tên là name.prompt. ta có th x lý d li u do ng i s d ng v a a vào.html <HTML> <HEAD> <TITLE> JavaScript Exemple </TITLE> <SCRIPT LANGUAGE= ³JavaScript´> var name=window. m t tr ng nh p d li u. Khi ó.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. 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. document. Ng i s d ng có th nh p vào tr ng ó r i kích vào OK. 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. Ví d c l u vào file Hello.

.write() document.write() nh ng vi t xong t xu ng dòng. File này ph i có ph n uôi .js nh rõ ngôn ng script c s d ng (JavaScript ho c VBScript) ánh d u ghi chú m t dòng trong o n script ánh d u ghi chú m t kh i trong o n script Xu t ra m t xâu trên c a s hi n th i m t cách tu n t theo file HTML có o n script ó T ng t cách th c document. 2.writeln() alert() . Hi n th m t dòng thông báo trên h p h i tho i L NH/M SCRIPT SRC LANGUAGE // /*. I M L I CÁC L NH VÀ M R NG KI U th HTML Thu c tính c a th SCRIPT thu c tính c a th SCRIPT Ghi chú trong JavaScript Ghi chú trong JavaScript cách th c JavaScript Cách th c JavaScript Cách th c c a JavaScript i nh p t c qua JavaScript. chúng ta hãy R NG MÔ T H p ch a các l nh JavaScript Gi a ch c a file JavaScript bên ngoài.2: Hi n th l i chào ng Bây gi b n ã có ý t ng v các ch c n ng có th ti p t c tìm hi u thêm v chính ngôn ng này..5.*/ document.JavaScript 11 Hình 2.

12 promt() .JavaScript Cách th c JavaScript Hi n th m t dòng thông báo trong h p h i tho i ng th i cung c p m t tr ng nh p d li u ng i s d ng nh p vào.

</SCRIPT> </HEAD> <BODY> </BODY> </HTML> 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: . var temp ="There are " + numfruit + " " + ". Ví d file Variable. document. numfruit = numfruit + 20.write(temp).3. 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. JavaScript là ngôn ng có tính nh ki u th p.". var numfruit=12.1.2. Bi n toàn c c có th s d ng t khoá var.Html: <HTML> <HEAD> <TITLE> Datatype Example </TITLE> <SCRIPT LANGUAGE= "JavaScript"> var fruit='apples'. Bi n c c b c khai báo trong m t hàm v i t khoá var nh sau: var x = 0. c khai báo nh sau : x = 0. trong JavaScript không có ki u h ng s CONST bi u di n m t giá tr không i nào y 3. tuy nhiên i u này không th c s c n thi t. Ki u d li u ct ng chuy n thành ki u phù h p khi c n thi t.JavaScript 13 CH NG 3 BI N TRONG JAVASCRIPT 3. Sau Chú ý Khác v i C. 3. 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 Khác v i C++ hay Java. 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. Bi n c c b : Ch c truy c p trong ph m vi ch ng trình mà nó khai báo. Các ch s không c s d ng m u tên m t bi n nh ng có th s d ng sau ký t u tiên. BI U DI N T T TRONG JAVASCRIPT T t là các giá tr trong ch ây là các ví d v t t : 8 ³The dog ate my shoe´ true ng trình không thay i.

H c s 8 (h bát phân) . Ph n m .). Hình 3.có th bi u di n s nguyên theo c s 10. ph i có ít nh t m t ch s theo sau .2. 1.JavaScript 14 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. ki u logic và ki u chu i.1. Trong JavaScript. D u ch m th p phân (. Ví d : 9. H c s 16 (h th p l c phân) . có b n ki u d li u sau ây: ki u s nguyên. 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) . ki u d u ph y ng.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.1: K t qu c a x lý d li u Ph n d .1.87 -0.85E4 9. 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: Ph n nguyên th p 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. phân bi t ki u d u ph y d u ch m hay E. chú ý r ng ch s u tiên ph i khác 0.1.87E14 ng v i ki u s nguyên.

ví d : document.JavaScript 15 .. trong chu i s d ng ( \" ). " hay '.98E-3 1. false.3. ch hai i u ki n : úng ho c sai. .. KI U CHU I (STRING) M t literal ki u chu i .\´ ´). Ví d : ³The dog ran up the tree´ µThe dog barked¶ ³100´ c bi u di n b i không hay nhi u ký t c t trong c p d u " bi u di n d u nháy kép ( " ). '. Mi n giá tr c a ki u này 1. KI U LOGIC (BOOLEAN) Ki u logic c s d ng ch có hai giá tr true..1..4.1.write(³ \´This text inside quotes.

JavaScript 16 2. Ví d (3+4)+(84. JavaScript c ng h tr bi u th c i u ki n. M t toán t có th tr l i m t giá tr ki u s . so sánh. 2. s h c. 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).1. trong tr ng h p ng c l i nó nh n giá tr "solid". Ki u gán thông th x=x+y x=x-y x=x*y x=x/y x=x%y 2. ki u chu i hay ki u logic. 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.1666666667. Logic: Nh m ánh giá giá tr logic. XÂY D NG JAVASCRIPT CÁC BI U TH C TRONG NH NGH A VÀ PHÂN LO I BI U TH C T p h p các literal. 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. bi u th c nh n giá tr valTrue.1. SO SÁNH ng Ki u gán rút g n x+=y x-=y x*=y x/=y x%=y 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. 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 . chu i. cú pháp nh sau: (condition) ? valTrue : valFalse N u i u ki n condition c ánh giá là úng. Sau ây là m t s toán t so sánh trong JavaScript: == 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 . 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. Chu i: Nh m ánh giá chu i. Bên c nh ó JavaScript còn h tr m t s ki u toán t gán rút g n. Ví d "The dog barked" + barktone + "!" là The dog barked ferociously!. ng c l i nh n giá tr valFalse.5/3) c ánh giá b ng 197. logic và logic bitwise.1. Các toán t trong JavaScript có th c nhóm thành các lo i sau ây: gán. Ví d temp>32 có th nh n giá tr sai.2.

LOGIC JavaScript h tr các toán t logic sau ây: expr1 && expr2 expr1 || expr2 ! expr Là toán t logic AND. N u ++ hay -. tr (-). có th có các k t qu khác nhau ph thu c vào v trí xu t hi n tr c hay sau c a ++ hay -.1. Là toán t logic OR. JavaScript còn h Toán t ph n d . Là toán t logic NOT ph úng n u c úng n u ít nh t nh giá tr c a expr. có giá tr ph nh toán h ng Toán t này t ng var lên 1 (có th bi u di n là ++var) Toán t này gi m var i 1 (có th bi u di n là --var) Chú ý N u b n gán giá tr c a toán t ++ hay -.1.vào m t bi n. tr l i giá tr expr1 và expr2 cùng úng.ng sau x. S Tr l i giá tr 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 ú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 ph i úng n u toán h ng bên trái nh h n toán h ng bên Tr l i giá tr úng n u toán h ng bên trái nh h n ho c b ng toán h ng bên ph i H C Bên c nh các toán t c ng (+).3. giá tr c a x c gán cho y tr c khi nó c t ng hay gi m.5. x s c t ng ho c gi m tr c khi giá tr x c gán cho y.v i tên bi n (là x trong tr ng h p này). N u ++ ng tr c x. 2.1. chia (/) thông th tr các toán t sau ây: var1% var2 var++ var-- ng. CHU I Khi ví d : c s d ng v i chu i. toán t + "abc" + "xyz" c coi là k t h p hai chu i.JavaScript 17 != > >= < <= 2. tr l i giá tr m t trong hai expr1 và expr2 úng. c "abcxyz" 2. nh y= x++.4. nhân (*). tr l i ph n d khi chia var1 cho var2 Toán t ph nh. .

tr l i giá tr 1 n u m t trong hai bit là 1. Các bit b chuy n sang ph i b m t và d u c a toán h ng bên trái c gi nguyên. & Toán t bitwise AND.1. sau ó l n l t th c hi n các phép toán trên t ng bit. D ch chuy n toán h ng trái sang trái m t s l ng bit b ng toán h ng ph i. u tiên giá tr c chuy n d i d ng s nguyên 32 bit. ^ Toán t bitwise XOR. 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 ). Bit d u c d ch chuy n t trái (gi ng >>). Ví d : 4<<2 tr thành 16 (s nh phân 100 tr thành s nh phân 10000) >> Toán t d ch ph i. BITWISE V i các toán t thao tác trên bit. tr l i giá tr 1 n u c hai bit cùng là 1. Sau ây là các toán t d ch chuy n: << Toán t d ch trái. | Toán t bitwise OR.JavaScript 18 2. a. Các bit b chuy n sang trái b m t và 0 thay vào phía bên ph i. Có m t s toán t d ch chuy n bitwise rút g n: Ki u bitwise thông th x = x << y x = x >> y x = x >>> y x=x&y x=x^y x=x|y ng Ki u bitwise rút g n x << = y x . Ví d : 16>>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. 7 + 5 b. 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.6. giá tr l i c chuy n thành ki u c a toán h ng bên trái. 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. Sau khi d ch chuy n. 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. CÂU H I Hãy ánh giá các bi u th c sau: 1. Giá tr c chuy n thành s nguyên 32 bit tr c khi d ch chuy n.>> y x >>> = y x&=y x^=y x|=y BÀI T P 2. 7 >= 5 . Nh ng bit c d ch sang ph i b xoá i.1. 7 == 7 d. T t nhiên v i s d ng k t qu c a toán t >> và >>> là gi ng nhau. "7" + "5" c.7.

true 2. (7 < 5) ? 7 : 5 g. true e. "75" c.1.JavaScript 19 e. (7 >= 5) || (5 > 5) 2. TR L I Các bi u th c 1. true c ánh giá nh sau: . false h. a. 12 b. 7 <= 7 2. f.8. 5 g. (7 >= 5) && (5 > 5) h. true d. f.

Cú pháp if ( < i u ki n> ) { //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 không b ng 10.. } else document. 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.write(³x b ng 10. CÁC L NH nh c a JavaScript thành ba nhóm sau: nh i u ki n. nó cho phép ch ra nhóm l nh ph i th c hi n n u i u ki n là sai. 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 ánh giá là úng. Có th chia các l L L L CÂU L NH I U KI N y 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 d a trên k t qu c a quy t nh.´). câu l nh i u ki n là if. nh l p. Nhóm l nh sau else không b t bu c ph i có.. x = 0.´). nh tháo tác trên i t ng.else if . t l i x b ng 0. JavaScipt cung c p hai ki u câu l nh l p: for loop while loop c . Trong JavaScript.JavaScript 20 3.

VÒNG L P FOR Vòng l p for thi t l p m t bi u th c kh i u .JavaScript 21 3. x++) { y=x*25.1. Sau khi k t thúc m i vòng l p. x<=10 . < i u ki n> .1. Cú pháp: for (initExpr. incrExpr){ //Các l nh c th c hi n trong khi l p } Ví d : <HTML> <HEAD> <TITLE>For loop Example </TITLE> <SCRIPT LANGUAGE= "JavaScript"> for (x=1. } </SCRIPT> </HEAD> <BODY></BODY> </HTML> .y= "+ y + "<BR>"). bi u th c incrExpr c ánh giá l i. document.initExpr. sau ó l p m t o n mã cho n khi bi u th c < i u ki n> c ánh giá là úng.write("x ="+ x +".

document.Html.1.loop Ví d này l u vào file for_loop.3. while (x<=10){ y=x*25. Ch c ti p t c th c hi n t i câu l nh ngay sau ch k t thúc c a vòng l p. y = "+ y + "<BR>").1. ng trình o n mã sau l p cho n khi x l n h n ho c b ng 100. Vòng l p while l p kh i l nh ch ng nào < i u ki n> còn Cú pháp: while (< i u ki n>) { //Các câu l nh th c hi n trong khi l p } Ví d : x=1.1: K t qu c a l nh for. Vòng l p này s th c hi n kh i mã l nh cho 3.2. } c ánh giá là úng K t qu c a ví d này gi ng nh ví d tr 3.. Câu l nh break dùng k t thúc vi c th c hi n c a vòng l p for hay while. WHILE n khi x>10. Cú pháp break.JavaScript 22 Hình 5. vòng l p s k t thúc Ví d : while (x<100) a vào ..write("x="+x +". Tuy nhiên n u giá tr x vòng l p nh h n 50. x++. BREAK c.

if (x=5) { x=8. while (x<=10) { document. l nh continue i u khi n quay l i < i u ki n>.JavaScript 23 { if (x<50) break.IN IT NG it ng. FOR.1. Cú pháp continue.2. x++. ch c n thi t khi b n s d ng các thu c tính trong vòng l p. nh y lên 8 và ti p t c t ng lên 10 x=0. CONTINUE L nh continue gi ng l nh break nh ng khác ch vi c l p c k t thúc và b t u t u vòng l p. } 3. } x++. v i for. do ó nó có m t s câu l nh làm vi c v i Câu l nh này c s d ng l p t t c các thu c tính (properties) c a m t i t ng. Ví d sau s minh ho i u này Cú pháp for (<variable> in <object>) { //Các câu l nh } Ví d Ví d sau s l y ra t t c các thu c tính c a tính.. l nh continue i u khi n quay l i incrExpr. 3. Ví d : o n mã sau t ng x t 0 lên 5. K t qu c minh ho trên hình 5. <HTML> <HEAD> <TITLE>For in Example </TITLE> <SCRIPT LANGUAGE= "JavaScript"> it ng Window và in ra tên c a m i thu c .1.write(³Giá tr c a x là:´+ x+´<BR>´).5. } CÁC CÂU L NH THAO TÁC TRÊN JavaScript là m t ngôn ng d a trên các i t ng..4. Tên bi n có th là m t giá tr b t k . continue. i v i vòng l p while.

Sau ó ba th hi n c a i t ng person c t o ra b ng l nh new ..paramN]) Ví d sau t o i t ng person có các thu c tính firstname.write(" "+ x + ".. age...6. Chú ý r ng t khoá this c s d ng ch i t ng trong hàm person .JavaScript 24 document.write("The properties of the Window object are: <BR>").1. sex. </SCRIPT> </HEAD> <BODY> </BODY> </HTML> Hình 5. for (var x in window) document. ").param2]. [. lastname.2: K t qu c a l nh for. NEW Bi n new c th c hi n Cú pháp t o ra m t th hi n m i c a m t it ng objectvar = new object_type ( param1 [.in 3.

} person1= new person("Thuy". person2= new person("Chung". document. document.write ("1. "+person2. "Nguyen Bao".last_name+" " + person1. "Male").write("2.first_name + "<BR>"). this. this. person4= new person("Hoàn". "Nguyen Nhat". "+ person4. "+ person3. document.last_name +" "+ person4. "24".last_name +" "+ person3. "23".first_name+"<BR>"). "Dau Bich". "24". sex){ this.last_name +" "+ person2. age.first_name + "<BR>" ). document. this.write("3.first_name + "<BR>").3: K t qu c a ví d l nh New .last_name=last_name. "Male").write("4. "Female"). " V n".age=age. "+person1.sex=sex. "24".JavaScript 25 <HTML> <HEAD> <TITLE>New Example </TITLE> <SCRIPT LANGUAGE= "JavaScript"> function person(first_name. "Male").first_name=first_name. </SCRIPT> </HEAD> <BODY> </BODY> </HTML> Hình 5. person3= new person("Binh". last_name.

JavaScript 26 3.property] it ng c g i th ng là i Có th xem ví d c a l nh new. 3. WITH L nh này c s d ng thi t l p th s d ng các thu c tính mà không Cú pháp with (object) { // statement } i t ng ng m nh cho m t nhóm các l nh.8. THIS T khoá this c s d ng ch i t ng hi n th i.1. write(³With the <B>with<B> statment. Ví d : Ví d sau ch ra cách s d ng l nh with thi t l p i t ng ng m nh là document và có th s d ng ph ng th c write mà không c n c p n i t ng document <HTML> <HEAD> <TITLE>With Example </TITLE> <SCRIPT LANGUAGE= "JavaScript"> with (document){ write(³This is an exemple of the things that can be done <BR>´). <P>´).1. } </SCRIPT> </HEAD> <BODY> </BODY> </HTML> . write(³This can really save some typing´). b n có c p n i t ng. Cú pháp this [. t ng hi n th i trong ph ng th c ho c trong hàm.7.

B i vì JavaScript là ngôn ng có tính nh ki u th p nên không c n nh ngh a ki u tham s và giá tr tr v c a hàm.age=age.[param2]. L nh function c s d ng t o ra hàm trong JavaScript. last_name.last_name=last_name. age. Hàm có th là thu c tính c a m t i t ng..JavaScript 27 Hình 5...first_name=first_name.[paramN]) { //function statement } Ví d : Ví d sau minh ho cách th c t o ra và s d ng hàm nh là thành viên c a m t Hàm printStats c t o ra là ph ng th c c a i t ng person <HTML> <HEAD> <TITLE>Function Example </TITLE> <SCRIPT LANGUAGE= "JavaScript"> function person(first_name. this.4: K t qu c a ví d l nh with CÁC HÀM (FUNCTIONS) JavaScript c g cho phép s d ng các hàm. this. Cú pháp function fnName([param1]. sex) { this. it ng. . M c dù không nh t thi t ph i có.. trong tr ng h p này nó c xem nh là ph ng th c c a i t ng ó. song các hàm có th có m t hay nhi u tham s truy n vào và m t giá tr tr v .

last_name + " " + this. "Female"). "Male").first_name + "<BR>" ).printStats(). person3.age+"<BR>"). "24". person4. "Do Van". "23". person1. person4= new person("Hoan".printStats(). "Nguyen Nhat". </SCRIPT> </HEAD> <BODY> </BODY> </HTML> Hình 8: Ví d v hàm . person3= new person("Binh".printStats(). } } person1= new person("Thuy". write("Sex :"+this.JavaScript 28 this. person2= new person("Chung". person2.printStats=printStats.printStats(). } function printStats() { with (document) { write (" Name :" + this.sex=sex. "Dau Bich".sex+"<BR>"). "23". "Nguyen Bao". write("Age :"+this. "Male"). this. "Male"). "24".

document. Bi u th c. EVAL Hàm này c s d ng ánh giá các bi u th c hay l nh.1.write(string+ ³=´+ eval(string)).5: K t qu vi c s d ng hàm </HEAD> <BODY> </BODY> </HTML> . Cú pháp: returnval=eval (b t k bi u th c hay l nh h p l trong Java) Ví d : <HTML> <HEAD> <TITLE>Eval Example </TITLE> <SCRIPT LANGUAGE= "JavaScript"> var string=´10+ Math. g n tr c ti p vào chính ngôn ng và không n m trong m t i t ng nào: eval parseInt parseFloat 3.9. l nh hay các i t ng c a thu c tính u có th c ánh giá.JavaScript 29 CÁC HÀM CÓ S N JavaScript có m t s hàm có s n.sqrt(64)´. c bi t h t s c h u ích khi ánh giá các bi u th c do ng i dùng a vào (ng c l i có th ánh giá tr c ti p). </SCRIPT> Hình 5.

write("Converting 1100 binary to base-10: " + parseInt(1100. [.2) + "<BR>"). hàm parseInt s c và chuy n d ng chu i n v trí nó tìm th y ký t không ph i là s . Cú pháp parseInt (string. radix]) Ví d : <HTML> <HEAD> <TITLE> perseInt Exemple </TITLE> <SCRIPT LANGUAGE= "JavaScript"> document.10) + "<BR>").write("Converting 0xC hex to base-10: " + parseInt(0xC.6 Ví d hàm Eval 3.1. Ngoài ra hàm này còn c t d u ph y ng. document. PARSEINT Hàm này chuy n m t chu i s thành s nguyên v i c s là tham s th hai (tham s này không b t bu c).10. </SCRIPT> </HEAD> <BODY> </BODY> . Trong tr ng h p d li u vào không h p l .JavaScript 30 Hình 5. Hàm này th ng c s d ng chuy n các s nguyên sang c s 10 và m b o r ng các d li u c nh p d i d ng ký t c chuy n thành s tr c khi tính toán.

write("137abc= " + parseFloat("137abc") + "<BR>").8 minh h a k t qu <HTML> <HEAD> <TITLE> perseFload Exemple </TITLE> <SCRIPT LANGUAGE= "JavaScript"> document. </SCRIPT> </HEAD> <BODY> </BODY> . document.JavaScript 31 </HTML> Hình 5.write("This script will show how diffrent strings are ").write("137= " + parseFloat("137") + "<BR>"). Hình 5. document.11.write("1abc37= " + parseFloat("1abc37") + "<BR>"). document.1.7: Ví d parInt 3. document. document. PARSEFLOAT Hàm này gi ng hàm parseInt nh ng nó chuy n chu i thành s bi u di n d ph y ng.write("Converted using parseFloat<BR>"). Cú pháp parseFloat (string) i d ng d u Ví d : Ví d sau minh ho cách th c x lý c a parseFloat v i các ki u chu i khác nhau.write("abc137= " + parseFloat("abc137") + "<BR>").

Chú ý r ng thành ph n u tiên trong m ng là dài m ng và không c s d ng. x<=numElements. x<=numElements. x++){ this[x]=0 } return this. t o ra m t m ng.8 : K t qu c a ví d parseFloat M NG (ARRAY) M c dù JavaScript không h tr c u trúc d li u m ng nh ng Netscape t o ra ph th c cho phép b n t t o ra các hàm kh i t o m ng nh sau: function InitArray(NumElements){ this. } ng Nó t o ra m t m ng v i kích th c xác nh tr c và i n các giá tr 0.length = numElements. x++){ . for (var x=1.JavaScript 32 </HTML> Hình 5.length = numElements. khai báo nh sau: myArray = new InitArray (10) Nó t o ra các thành ph n t myArray[1] n myArray[10] v i giá tr là 0. for (var x=1. Giá tr các thành ph n trong m ng có th c thay i nh sau: myArray[1] = "Ngh An" myArray[2] = "Lào" Sau ây là ví d y : <HTML> <HEAD> <TITLE> Array Exemple </TITLE> <SCRIPT LANGUAGE= "JavaScript"> function InitArray(numElements) { this.

JavaScript 33 this[x]=0 } return this. ngh a là s ph n ng tr c các s ki n xác nh tr c nh kích chu t hay t i m t v n b n. } myArray = new InitArray(10). myArray[2] = "Hà N i".9: Ví d m ng S KI N JavaScript là ngôn ng nh h ng s ki n. </SCRIPT> </HEAD> <BODY> </BODY> </HTML> Hình 5. M t s ki n có th gây ra vi c th c hi n m t o n mã l nh (g i là các ch ng triình x lý s ki n) giúp cho ch ng trình có th ph n ng m t cách thích h p. . document. document. myArray[1] = "Ngh An".write(myArray[2] + "<BR>").write(myArray[1] + "<BR>").

onMouseOut onClick . X y ra khi di chuy n chu t qua k t n i hay anchor. Ch ng trình x lý s ki n c xác nh là m t thu c tính c a m t th HTML: Ch <tagName eventHandler = "JavaScript Code or Function"> Ví d sau g i hàm CheckAge() m i khi giá tr c a tr ng v n b n thay i: <INPUT TYPE=TEXT NAME="AGE" onChange="CheckAge()"> o n mã c a ch ng trình x lý s ki n không là m t hàm. c focus(làm n i lên). onChange. i dùng kích vào các thành ph n hay liên c ch n thay i X y ra khi giá tr c a thành ph n X y ra khi thành ph n c a form X y ra trang Web c t i. Các i Sau ây là b ng các ch ng trình x lý s ki n có s n c a m t s t ng này s c trình bày k h n trong ph n sau. onChange.JavaScript 34 ng trình x lý s ki n (Event handler): M t o n mã hay m t hàm c th c hi n ph n ng tr c m t s ki n g i là ch ng trình x lý s ki n. it Text Textarea Button Checkbox Radio button Hypertext link Clickable Imagemap area Reset button ng Ch ng trình x lý s ki n có s n Selection list onBlur. onSelect onBlur. X y ra khi ng X y ra khi ng i s d ng l a ch n m t tr i dùng a ra m t form. onMouseOut onMouseOver. ng nh p d i dùng óng m t trang it ng. onSelect onClick onClick onClick onClick. Tuy nhiên cho m c ích vi t thành các module nên vi t d i d ng các hàm. nó là các l nh c a JavaScript cách nhau b ng d u ch m ph y. onFocus. onMouseOver. M t s ch ng trình x lý s ki n trong JavaScript: onBlur onClick onChange onFocus onLoad onMouseOver onSelect onSubmit onUnLoad X y ra khi input focus b xoá t thành ph n form X y ra khi ng k t c a form. X y ra khi ng li u trên form. onFocus onBlur. onChange. onFocus.

Hình 5. form. onFocus onSubmit.AGE.10 minh ho k t qu c a ví d này <HTML> <HEAD> <TITLE> An Event Handler Exemple </TITLE> <SCRIPT LANGUAGE= "JavaScript"> function CheckAge(form) { if ( (form.JavaScript 35 Submit button Document Window Framesets Form Image onClick onLoad. onFocus onBlur. onError.value<0)||(form. } } </SCRIPT> </HEAD> <BODY> <FORM NAME="PHIEU_DIEU_TRA"> Nh p vào tên c a b n:<BR> Tên <INPUT TYPE=TEXT NAME="TEN" MAXLENGTH=10 SIZE=10><BR> m <INPUT TYPE=TEXT NAME="DEM" MAXLENGTH=15 SIZE=10><BR> H <INPUT TYPE=TEXT NAME="HO" MAXLENGTH=10 SIZE=10><BR> Age <P> <INPUT TYPE=TEXT NAME="AGE" MAXLENGTH=3 onChange="CheckAge(PHIEU_DIEU_TRA)"><BR> SIZE=2 B n thích mùa nào nh t:<BR> Mùa xuân<INPUT TYPE=RADIO NAME="MUA" VALUE="Mua xuan"> . onReset onLoad. onUnload. onBlur.value=0. onAbort Ví d sau là m t o n mã script n gi n c a ch ng trình x lý s ki n th m nh giá tr a vào trong tr ng text. Tu i c a ng i s d ng c nh p vào trong tr ng này và ch ng trình x lý s ki n s th m nh tính h p l c a d li u a vào.AGE. onUnload. Ch ng trình x lý s ki n cg im i khi tr ng AGE b thay i và focus chuy n sang tr ng khác.value>120) ) { alert("Tu i nh p vào không h p l ! M i b n nh p l i"). onError onLoad. N u không h p l s xu t hi n m t thông báo yêu c u nh p l i.AGE.

JavaScript 36 Mùa h <INPUT TYPE=RADIO NAME="MUA" VALUE="Mua ha"> Mùa thu<INPUT TYPE=RADIO NAME="MUA" VALUE="Mua thu"> Mùa ông<INPUT TYPE=RADIO NAME="MUA" VALUE="Mua dong"> <P> Hãy ch n nh ng ho t Tr Th ng ngoài tr i mà b n yêu thích:<BR> i b <INPUT TYPE=CHECKBOX NAME="HOAT_DONG" VALUE="Di bo"> t tuy t<INPUT TYPE=CHECKBOX NAME="HOAT_DONG" VALUE="Truot tuyet"> thao d i n c<INPUT TYPE=CHECKBOX VALUE="Duoi nuoc"> NAME="HOAT_DONG" p xe<INPUT TYPE=CHECKBOX NAME="HOAT_DONG" VALUE="Dap xe"> <P> <INPUT TYPE=SUBMIT> <INPUT TYPE=RESET> </FORM> </BODY> </HTML> Hình 5.10: Minh ho cho ví d Event Handler .

> This is my page! </BODY> </HTML> 5. Câu l nh nào trong các câu sau ây s d ng sai th s ki n a. } function farewell() { alert("Goodbye " + name + "."> c..JavaScript 37 BÀI T P 3.1."> b. <FORM onLoad="doSomething()."> e. i u gì x y ra khi th c hi n script sau: <HTML> <HEAD> <TITLE>Exercise 5.12. <BODY onUnload="doSomething()."name"). Vi t m t o n l nh JavaScript th c hi n: H i ng i s d ng: "10+10 b ng bao nhiêu?" N u úng thì h i ti p: Có mu n tr l i câu th hai không?" N u mu n thì h i: "10*10 b ng bao nhiêu?" ánh giá k t qu b ng bi u th c logic sau ó vi t ra màn hình: úng: "CORRECT".4</TITLE> <SCRIPT LANGUAGE="JavaScript"> <!-.").jpg và m t l i chào. <FORM onSubmit="doSomething(). 3. } // STOP HIDING FROM OTHER BROWSERS --> </SCRIPT> </HEAD> <BODY onLoad="welcome().. Vi t m t o n l nh JavaScript s d ng cách th c confirm() và câu l nh if.then th c hi n: H i ng i s d ng có mu n nh n c m t l i chào không N u có thì hi n nh wellcome." onUnload="farewell(). Sai: "INCORRECT" G i ý: S d ng bi n toàn c c l u k t qu úng so sánh v i k t q a a vào. CÂU H I 1. N u không thì vi t ra m t l i thông báo 2.HIDE FROM OTHER BROWSERS var name = "". Thanks for visiting my page. function welcome() { name = prompt("Welcome to my page! What's Your Name?".". <INPUT TYPE=textarea onLoad="doSomething()."> f. <INPUT TYPE=text onFocus="doSomething()."> d."> 4. <BODY onClick="doSomething(). S d ng vòng l p while mô ph ng các vòng l p for sau: .

j --) { document. j > 0. } else document. S d ng cách th c confirm() và c u trúc if. document.5.then: <HTML> <HEAD> <TITLE>Execise 5.HIDE FROM OTHER BROWSERS // DEFINE VARIABLES FOR REST OF SCRIPT var question="What is 10+10?". Th c hi n h i ng i s d ng: <HTML> <HEAD> <TITLE>Exercise 3.writeln(j + "<BR>").1</TITLE> <HEAD> <BODY> <P> <SCRIPT LANGUAGE="JavaScript"> var conf=confirm("Click OK to see a wellcome message!") if (conf){ document.write("<IMG SRC='wellcome. } 3. TR L I 1. . for (j = 4.jpg'>").1. num <= 10. var answer=20.JavaScript 38 a. for (num = 0. k <= 99.13. num ++) { if (num == 8) break.3</TITLE> <SCRIPT LANGUAGE="JavaScript"> <!-. k = k*2) { k = k/1.write("<BR>Wellcome you come to CSE's class").write("What a pity! You have just click Cancel button"). var correct='CORRECT'. </SCRIPT> </P> </BODY> </HTML> 2.. } c.. } b. for (k = 1.

write(output).")) response = prompt(question.JavaScript 39 var incorrect='INCORRECT'. e. // STOP HIDING FROM OTHER BROWSERS --> </SCRIPT> </HEAD> <BODY> <SCRIPT LANGUAGE="JavaScript"> <!-. k = 1. 5."0"). // ASK THE QUESTION var response = prompt(question."0"). answer = 100. hàm farewell() s th c hi n g i m t l i c m n t i ng i s d ng. } b. S d ng vòng l p while nh sau: a. hàm wellcome s th c hi n h i tên ng i s d ng. . } } // chECK THE ANSWER var output = (response == answer) ? correct : incorrect. l u tên ó vào bi n toàn c c name. // STOP HIDING FROM OTHER BROWSERS --> </SCRIPT> </BODY> </HTML> 3. response = prompt (question. Khi ng i s d ng sang m t a ch URL khác. Các câu úng: b. } else { // THE ANSWER WAS RIGHT: OFFER A SECOND QUESTION if (confirm("Correct! Press OK for a second question. while (k <= 99) { k = k * 2 / 1. Khi ch ng trình c ch y (load). f 4. Các câu sai: a. c."0").writeln(j + "<BR>").5. j = 5.HIDE FROM OTHER BROWSERS // OUTPUT RESULT document. d. // chECK THE ANSWER THE FIRST TIME if (response != answer) { // THE ANSWER WAS WRONG: OFFER A SECOND chAncE if (confirm("Wrong! Press OK for a second chance. while (--j > 0) { document.")) { question = "What is 10*10?".

num = 0. while (num <= 10) { if (num++ == 8) break. } .JavaScript 40 } c.

Trong s phân c p các i t ng c a JavaScript.JavaScript 41 4.1 ch ra s phân c p các i t ng. nh ng không h ng i t ng b i vì nó không h tr các l p c ng nh tính th a k . b n ph i s d ng: document.write c s d ng trong nhi u ví d a v n b n k t qu ra document. nó s t o ra m t s i t ng cùng v i nh ng giá tr các thu c tính c a chúng d a trên file HTML c a document ó và m t vài thông tin c n thi t khác. ph ng th c (methods). Ph n này nói v các i t ng trong JavaScript và hình 6. i t ng c ng có th có các ch ng trình x lý s ki n. Trong ví d v ch ng trình x lý s ki n tr c ây form tên PHIEU_DIEU_TRAlà thu c tính c a i t ng document và tr ng text AGE là thu c tính c a form PHIEU_DIEU_TRA. Ví d i t ng link có hai ch ng trình x lý s ki n là onClick và onMouseOver. .PHIEU_DIEU_TRA. các i t ng con th c s là các thu c tính c a các i t ng b m . onMouseOver c g i khi con tr chu t di chuy n qua link. Ví d i t ng document có thu c tính title ph n ánh n i dung c a th <TITLE> c a document.value Các i t ng có thu c tính (properties). và các ch ng trình x lý s ki n (event handlers) g n v i chúng. Khi b n t i m t document xu ng Navigator. Nh ng i t ng này t n t i m t cách có c p b c và ph n ánh chính c u trúc c a file HTML ó.AGE. tham chi u n giá tr c a AGE. CÁC IT NG TRONG JAVASCRIPT Nh ã nói JavaScript là ngôn ng l p trình d a trên i t ng. onClick c g i khi có i t ng link c kích. Bên c nh ó b n th y ph ng th c document.

window: là i t ng d ng vào toàn b c a s . có các thu c tính th c hi n áp document : ch a các thu c tính d a trên n i dung c a document nh tên. các i t ng con chính là các thu c tính c a m t i t ng cha. dùng cho MIME type c h tr b i client và plug-in c cài t trên client. a ch URL hi n th i history : Ch a các thu c tính v các URL mà client yêu c u tr location: có các thu c tính d a trên c ó.1: S 1 . m c cao nh t. các k t n i và các forms. màu n n.form1 T t c các trang u có các i t ng sau ây: navigator: có các thu c tính tên và phiên b n c a Navigator ang c s d ng.JavaScript 42 S sau s minh ho s phân c p c a các it ng này Window Texturea Text navigator Plugin Frame Layer Link document Image Area Location Anchor Applet History Plugin Form Checkbox Button Select Hình 6.Phân c p it ng Navigator Option FileUpload Mime Type Password Hidden Submit Reset Radio Trong s phân c p này. Ví d nh m t form tên là form1 chính là m t i t ng con c a i t ng document và c g i t i là document. .

it ng navigator.write("userAgent = "+navigator.write("appCodeName = "+navigator. document.userAgent + "<BR>").appCodeName + "<BR>").JavaScript 43 Sau ây s mô t các thu c tính. ng th c c ng nh các ch ng trình x lý s ki n IT NG NAVIGATOR i t ng này c s d ng t c các thông tin v trình duy t nh s phiên b n. nh thông tin v phiên b n c a nh header c a user . </SCRIPT> </HEAD> <BODY> </BODY> </HTML> . nh tên trình duy t. Các thu c tính appCodeName AppName AppVersion userAgent Xác Xác Xác Xác nh tên mã n i t i c a trình duy t (Atlas). document.write("appVersion = "+navigator. Ví d Ví d sau s hi n th các thu c tính c a it ng navigator <HTML> <HEAD> <TITLE> Navigator Object Exemple </TITLE> <SCRIPT LANGUAGE= "JavaScript"> document.appName + "<BR>").appVersion + "<BR>").write("appName = "+navigator.agent. i t ng này không có ph ng th c hay ch ng trình x lý s ki n. document. ph cho t ng i t ng trong JavaScript.

Status c s d ng cho thông báo t m th i hi n th lên trên thanh th ng thái c a s .2: Minh ho cho it ng Navigator IT NG WINDOW i t ng m c cao nh t.i t ng c a s cha m Self . Window .C a s trên cùng.2. Length . CÁC THU C TÍNH defaultStatus .1.M ng xác nh t t c các frame trong c a s . 4. Top .Thông báo ng m nh hi n th lên trên thanh tr ng thái c a c as Frames .1. Parent .C a s hi n th i. Name . .S l ng các frame trong c a s cha m . i t ng i t ng window nh ã nói trên là document. Các i t ng window. CÁC PH NG TH C alert ("message") -Hi n th h p h i tho i v i chu i "message" và nút OK. frame. c s d ng l y hay t l i thông báo tr ng thái và ghi è lên defaultStatus.C a s hi n th i.Tên c a c a s hi n th i.JavaScript 44 Hình 6. v trí u là thu c tính c a 4.1.

open("URL".'window2'. [windowVar = ][window].open(''. [ "windowFeatures" ] ) .M c a s m i.html" TARGET="window2"> Load a file into window2 </A> </P> <INPUT TYPE="button" VALUE="Close Second Window" onClick="msgWindow. ví d này l a vào file window.msec) .html: <HTML> <HEAD> <TITLE>Frame Example </TITLE> </HEAD> <BODY> <FORM> <INPUT TYPE="button" VALUE="Open Second Window" onClick="msgWindow=window.M m t h p h i tho i nh n d li u vào tr ng text."defaultInput"]) . Ví d : S d ng tên c a s khi g i t i nó nh là ích c a m t form submit ho c trong m t Hipertext link (thu c tính TARGET c a th FORM và A). sau ó m t liên k t s t i file doc2. SetTimeout tr l i timeoutID windowReference.close()"> </FORM> </BODY> </HTML> . TimeoutID = setTimeout(expression.heigh t=200')"> <P> <A HREF="doc2. nút OK và nút Cancel.óng c a s windowReference.JavaScript 45 clearTimeout(timeoutID) -Xóa timeout do SetTimeout t. prompt ("message" [. "windowName".width=200. confirm("message") -Hi n th h p h i tho i v i chu i "message". Trong ví d t o ra m t t i c a s th hai.ánh giá bi u th c expresion sau th i gian msec.html xu ng c a s m i ó r i m t nút khác dùng óng c a s th hai l i. Tr l i giá tr True cho OK và False cho Cancel.'resizable=no.close . nh nút th nh t m m t c a s r ng.

Host .Ph n ng d n c a URL (ví d /chap1/page2.Tên anchor c a v trí hi n th i (ví d topic3).JavaScript 46 Hình 6.3.html).abc.3: Minh ho cho 4. Hostname . .com/ chap1/page2. Ví d : http:// www.Ph n hostname:port c a URL (ví d www.Tên c a host và domain (ví d www.Câu truy v n tìm ki m có th cu i URL cho các script CGI. CÁC CH NG TRÌNH X LÝ S it KI N ng c a s onLoad . Search . Port . th ng là c ng ng m nh.html#topic3 Các thu c tính hash .Giao th c c s d ng (cùng v i d u hai ch m) (ví d http:). Pathname . href .Toàn b URL cho document hi n t i. i t ng này hoàn toàn không có các ph ng th c và ch ng trình x lý s ki n i kèm.C ng truy n thông c s d ng cho máy tính host. onUnLoad .com ).1.abc.Xu t hi n khi c a s k t thúc vi c t i.Xu t hi n khi c a s c lo i b . Chú ý r ng ây th ng là c ng ng m nh và ít khi c ch ra.com ). IT NG LOCATION Các thu c tính c a i t ng location duy trì các thông tin v URL c a document hi n th i. Protocol .abc.

JavaScript 47 IT NG FRAME M t c a s có th có m t vài frame.1. frame không có các ch ng trình x lý s ki n. m c dù 2 trong s các frame ó n m trong m t frameset khác. Parent . CÁC PH NG TH C clearTimeout (timeoutID) .10%"> <FRAMESET COLS="30%.4.6. a) T o m t frame (create) nh ngh a m t t o m t frame.html) contentFrame (titles.Xoá timeout do setTimeout l p.C a s hay frame ch a nhóm frame hi n th i.msec) . Ví d 1: t o frame ( hình 17) <HTML> <HEAD> <TITLE>Frame Example </TITLE> <FRAMESET ROWS="90%. TimeoutID = setTimeout (expression. 4.S l ng các frame con trong m t frame.HTM NA ME="contentFrame"> </FRAMESET > <FRAME SRC=NAVIGATOR. 4. S ki n onLoad và onUnLoad là c a i t ng window.1. CÁC THU C TÍNH frames .frame hi n th i.HTM NAME="navigateFrame"> </FRAMESET > </HEAD> <BODY> </BODY> </HTML> S sau hi n th c u trúc c a các frame: C 3 frame u trên cùng m t c a s cha. Name . S D NG FRAME 4.M ng t t c các frame trong c a s . ta s d ng th FRAMESET.html) .5.6.1.ánh giá expression sau khi h t th i gian msec.frame hi n th i. SetTimeout tr l i timeoutID.1. 4.HTM NAME="ListFrame"> <FRAME SRC=TITLES. self .70%"> <FRAME SRC=CATEGORY. Top listFrame (category.html) navigatorFrame (navigator. Các frame có th cu n m t cách c l p v i nhau và m i frame có URL riêng. M c ích c a th này là t p các frame trong m t trang.1.Thu c tính NAME c a th <FRAME> Length . Window .

frames[0] contentFrame chính là top.html l i ti p t c <HTML> <HEAD> t m t frameset: .HTM NAME="navigateFrame"> </FRAMESET > </HEAD> <BODY> </BODY> </HTML> Trong file muske13. b n có th t o ra m t c a s gi ng nh ví d tr c nh ng trong m i nh c a hai frame l i có m t c a s cha riêng t navigateFrame.JavaScript 48 B n có th g i t i nh ng frame tr c ó b ng cách s d ng thu c tính frames nh sau: listFrame chính là top.frames[2] Hình 6.HTML NAME="upperFrame"> <FRAME SRC=NAVIGATOR.4: K t qu vi c t o frame trong Ví d 2: C ng gi ng nh m t s l a ch n.10%"> <FRAME SRC=muske13. M c frameset cao nh t có th c nh ngh a nh sau: <HTML> <HEAD> <TITLE>Frame Example </TITLE> <FRAMESET ROWS="90%.frames[1] navigatorFrame chính là top.

và hai frame listFrame. history.frames[0]. n u b n thêm m t dòng sau vào navigatorFrame: <INPUT TYPE="button" VALUE="Titles only" onClick="top.frames[0] top listFrame (category. Không có các ch ng trình x lý s ki n cho các frame.frames[1] b) C p nh t m t frame (update) t B n có th c p nh t n i dung c a m t frame b ng cách s d ng thu c tính location a ch URL và ph i nh ch rõ v trí c a frame trong c u trúc.frames[0]. M t s các thu c tính g n v i th <BODY>. i t ng document c t o ra b ng c p th <BODY> và </BODY>. chính là top. file artist.HTM NAME="ListFrame"> <FRAME SRC=TITLES.html) upperFrame (muske13.html s c t i vào upperFrame. Trong ví d trên.html'"> thì khi nút ³Titles only´ c nh n.html) contentFrame (titles.frames[1] chính là upperFrame. links là thu c tính c a i t ng document.html) navigatorFrame (navigator.70%"> <FRAME SRC=CATEGORY. S ki n onLoad và onUnLoad là cho i t ng window. contentFrame s b óng l i nh chúng ch a bao gi t n t i.frames[0] chính là upperFrame.frames[1] ho c top.frames[0].2.1.JavaScript 49 <TITLE>Frame Example </TITLE> <FRAMESET COLS="30%. IT NG DOCUMENT i t ng này ch a các thông tin v document hi n th i và cung c p các ph ng th c a thông tin ra màn hình.6. forms.frames[0] ho c top.HTM NAME="contentFrame"> </FRAMESET > </HEAD> <BODY> </BODY> </HTML> Khi ó k t qu hi n th c a ví d 2 gi ng ví d 1 nh ng s phân c p c a các frames l i khác h n: B n có th g i t i các frame trên b ng cách s d ng thu c tính m ng frames nh sau: upperFrame chính là top. Các i t ng anchor. .location='artist.html) navigatorFrame listFrame contentFrame 4.

M ng t t c các link trong document. document.JavaScript 50 4. document.URL y c a v n b n. M ng anchor tham chi u n m i anchor có tên trong document. cookie .. CÁC PH NG TH C document.Gi ng thu c tính LINK. Nó c xác nh b ng c p th <A> và </A>. IT NG ANCHORS anchor là m t o n v n b n trong document có th dùng làm ích cho m t siêu liên k t.[.anchors [index] M ng anchor có m t thu c tính duy nh t là length xác document. [.Gi ng nh thu c tính ALINK.M m t stream thu th p d li u vào c a các phwong th c write và writeln. links . title .writeln (expression1 [. document.N i dung c a th <TITLE>. linkColor .. anchor .. bgColor . lastModified .7.expression2] .Gi ng thu c tính VLINK.expressionN ]) . CÁC THU C TÍNH alinkColor . M i anchor c tham chi u b ng cách: document.1. nh s l ng các anchor trong IT NG FORMS Các form c t o ra nh c p th <FORM> và </FORM>. vlinkColor . document.Vi t bi u th c HTML lên v n b n trông m t c a s xác nh. Có m t vài ph n t (elements) là thu c tính c a i t ng forms: button checkbox hidden password .M ng t t c các form trong document.Ngày cu i cùng v n b n c s a. i t ng anchor không có thu c tính.write(expression1 [.1.Xoá document hi n th i.M ng t t c các anchor trong document.Gi ng thu c tính BGCOLOR.clear .8.óng dòng d li u vào và a toàn b d li u trong b m ra màn hình. Ph n l n các thu c tính c a i t ng form ph n ánh các thu c tính c a th <FORM>.expressionN] ) Gi ng ph ng th c trên nh ng khi h t m i bi u th c l i xu ng dòng.S d ng xác nh cookie. nó có th c xác nh nh sau: document. forms .expression2]. location . ph ng th c c ng nh ch ng trình x lý s ki n.close .Gi ng thu c tính TEXT.open (["mineType"]) . fgColor . 4.URL c a v n b n g i nó. referrer .length..anchors.

1. elements M ng ch a t t c các thành ph n trong m t form (nh checkbox. target Xâu ch a tên c a c a s ích khi submit form 4.1.forms.length. danh sách l a ch n encoding Xâu ch a ki u MIME c s d ng mã hoá n i dung c a form g i cho server. length S l ng các thành ph n trong m t form. .12. Ph th c này mô ph ng m t click vào nút submit trên form. method Thu c tính METHOD.1. CÁC PH history. ng trình x lý s ki n này c g i khi ng i s d ng chuy n d li u IT NG HISTORY c ng i t ng này c s d ng l u gi các thông tin v các URL tr c ng i s d ng s d ng.back() c s d ng tham chi u t i URL m i c th m tr c ây. i t này không có ch ng trình x lý s ki n.forward() c s d ng tham chi u t i URL k ti p trong danh sách. 4. CÁC THU C TÍNH action thu c tính ACTION c a th FORM. S M i m t form có th c tham chi u nh sau: document.Xu t d li u c a m t form tên formName t i trang x lý. history.Ch t form i.13. Nó s không gây hi u ng gì n u ã n cu i c a danh sách. CÁC THU C TÍNH length . chúng có th l ng các form có th c xác nh nh sau: document.forms[index] 4.10.submit () . CÁC CH NG TRÌNH X LÝ S KI N ng onSubmit . 4.9.1. N u document ch a m t vài form.11. c tham chi u qua m ng forms.1. Danh sách các URL c l u tr theo th t th i gian. 4. tr ng text. CÁC PH NG TH C formName.JavaScript 51 radio reset select submit text textarea Các ph n t này s c trình bày sau.S l ng các URL trong NG TH C it ng.

abc. M ng link ch a danh sách t t c các liên k t trong document. Hostname .com). kho ng 2. có th s d ng URL t ng t : http://www. Các thu c tính c a i t ng link ch y u x lý v URL c a các siêu liên k t. URL g n nh t có ch a location là chu i con s c tham chi u. Host .X y ra khi ng i s d ng nh n vào link. Chú ý r ng ây th ng là c ng ng m nh và ít khi c ch ra.16. href . Pathname .abc. th ng là c ng ng m nh. i t ng link c ng không có ph ng th c nào.html#topic3 4.com/chap1/page2.Gi ng thu c tính TARGET c a <LINK>.Ph n ng d n c a URL (ví d /chap1/page2.Giao th c c s d ng (cùng v i d u hai ch m) (ví d http:).abc. CÁC CH NG TRÌNH X LÝ S KI N onClick .Câu truy v n tìm ki m có th cu i URL cho các script CGI.1. Search . các hàm toán h c. CÁC THU C TÍNH E LN2 .Ph n hostname:port c a URL (ví d www.links. Các thu c tính c a i t ng này ch a nhi u h ng s toán h c. CÁC THU C TÍNH hash .links [index] xác nh các thu c tính c a i t ng link. i t ng Math không có ch ng trình x lý s ki n. Có th xác nh s l ng các link qua document.14. Vi c tham chi u t i number trong các ph ng th c có th là s hay các bi u th c c náh giá là s h p l .length() Có th tham chi u t i m t liên k t q a document.Tên c a host và domain (ví d ww. onMouseOver .com).html).Tên anchor c a v trí hi n th i (ví d topic3). n u s d ng location.H ng s Euler. N u delta c s d ng thì vi c d ch chuy n lên phía trên khi delta d ng và xu ng phía d i khi delta âm.1. IT NG LINKS i t ng link là m t o n v n b n hay m t nh c xem là m t siêu liên k t. .go (delta | "location") c s d ng chuy n lên hay chuy n xu ng delta b c hay di chu n n URL xác nh b i location trong danh sách.693.JavaScript 52 history. kho ng 0. 4. port . .X y ra khi con chu t di chuy n qua link. 4.Toàn b URL cho document hi n t i.15.718. Protocol .logarit t nhiên c a 2. IT NG MATH i t ng Math là i t ng n i t i trong JavaScript.1. l ng giác ph bi n. Target .C ng truy n thông c s d ng cho máy tính host.

random (r) .Tr l i logarit t nhiên c a number. Math.sin (number) . Math. Math. v i e là h ng s Euler. ví d : dateVar = new Date ('August 16..Giá tr c a T.atan (number) .C n b c 2 c a 2.Tr l i giá tr arc sine (theo radian) c a number. Math. LOG2E . Các ph ng th c gi i thi u trong ph n này s d ng i t ng Date dateVar.Tr l i ngày trong tu n (0=ch nh t. Nó cung c p nhi u ph ng th c có ích x lý v th i gian và ngày tháng.getDate() .707. kho ng 2.Tr l i c n b c 2 c a number. CÁC PH NG TH C Math.6=th b y) cho dateVar.Tr l i s nguyên nh nh t l n h n ho c b ng number. PI ..Tr l i giá tr base lu th a exponent. SQRT2 .Tr l i giá tr arc cosine (theo radian) c a number. Math. kho ng 0.logarit t nhiên c a 10. kho ng 1.round (number) .log (number) .Tr l i m t s ng u nhiên gi a 0 và 1. SQRT1_2 . Math. Math.5.Tr l i giá tr nh nh t gi a num1 và num2.18.exp (number) .Tr l i tag c a number.JavaScript 53 LN10 . Giá tr c a number ph i n mg gi a -1 và 1.Tr l i ngày trong tháng (1-31) cho dateVar.Tr l i giá tr c a number làm tròn t i s nguyên g n nh t. 4.min (num1.getDay() . Math.414.Tr l i giá tr arc tan (theo radian) c a number.17.Tr l i sin c a number. .cos (number) .14159. IT NG DATE i t ng Date là i t ng có s n trong JavaScript. Math.num2) . Math.logarit c s 2 c a e.1. dateVar.442. 4. i t ng Date không có thu c tính và ch ng trình x lý s ki n. Math.pos (base.1.Tr l i s nguyên l n nh t nh h n ho c b ng number.sqrt (number) .Tr l i giá tr l n nh t gi a num1 và num2 Math. Math.Tr l i giá tr cosine c a number. 1996 20:45:04').abs (number) . Giá tr c a number ph i n mg gi a -1 và 1.302.C n b c 2 c a 0.max (num1.exponent) . kho ng 3. CÁC PH NG TH C dateVar.asin (number) .num2) . Ph n l n các ph ng th c date u có m t i t ng Date i cùng. Math.tan (number) .Tr l i giá tr e^ number.ceil (number) . Phwong th c này ch th c hi n c trên n n t ng UNIX.acos (number) .floor (number) .. kho ng 1. Math. Math.Tr l i giá tr tuy t i c a number.

dateVar. IT NG STRING i t ng String là i t ng c xây d ng n i t i trong JavaScript cung c p nhi u ph ng th c thao tác trên chu i.K t qu gi ng nh th <BOLD> trên chu i str. day [.Tr l i ký t th a trong chu i str.t gi là hours cho dateVar.t giây là seconds cho dateVar.minutes] [.index]) .Phân tích chu i dateStr và tr l i s l ng các mili giây tính t 00:00:00 ngày 01/01/1970.big() .setMonths(months) .K t qu gi ng nh th <FONTCOLOR = color>. dateVar.K t qu gi ng nh th <TT> trên chu i str. str. dateVar.getTimeZoneOffset() .hours] [. dateVar. str.charAt(a) .setHours(hours) .fontsize(size) .Tr l i phút (0-59) cho dateVar. month. Date. Chu i str c tìm t trái sang ph i.1.setSeconds(seconds) . dateVar.Tr l i s l ng mili giây t 00:00:00 01/01/1970 GMT.getHours() .getMinutes() . dateVar. CÁC PH NG TH C str. i t ng này có thu c tính duy nh t là dài (length) và không có ch ng trình x lý s ki n. 4.getSeconds() . str.Tr l i gi (0-23) cho dateVar. Date.index0f(srchStr [.Tr l i giây (0-59) cho dateVar. str.Tr l i s l ng các mili giây t 00:00:00 ngày 1/1/1970. trong ó value bi u di n s l ng mili giây t 00:00:00 ngày 01/01/10970.t n m là years cho dateVar. str.setYear(years) . dateVar.seconds]) .italics() . Tham s index có th c s d ng xác nh v trí b t u tìm ki m trong chu i. dateVar.setMinutes(minutes) .K t qu gi ng nh th <BLINK> trên chu i str.K t qu gi ng nh th <BIG> trên chu i str. str.getYear()-Tr l i n m cho dateVar.toGMTString() .fontcolor() .bold() .setTime(value) . dateVar.K t qu gi ng nh th <FONTSIZE = size>. dateVar.Tr l i v trí trong chu i str v trí xu t hi n u tiên c a chu i srchStr.K t qu gi ng nh th <I> trên chu i str. dateVar.JavaScript 54 dateVar. str.Tr l i d ch chuy nb ng phút c a gi a ph ng hi n t i so v i gi qu c t GMT.anchor (name) c s d ng t o ra th <A> (m t cách ng). str.UTC (year.getTime() .t th i gian là value. .t tháng là months cho dateVar. dateVar.Tr l i chu i bi u di n dateVar d i d ng GMT.t ngày trong tháng là day cho dateVar.setDay(day) .fixed() . str.toLocaleString()-Tr l i chu i bi u di n dateVar theo khu v c th i gian hi n th i. dateVar. Tham s name là thu c tính NAME c a th <A>. dateVar.t phút là minutes cho dateVar.19.blink() .parse (dateStr) .

K t qu gi ng nh th <SMALL> trên chu i str. str.link(href) c s d ng t o ra m t k t n i HTML ng cho chhu i str.K t qu gi ng nh th <STRIKE> trên chu i str. B ng ?: Các ph n t c a form Ph n t Mô t Là m t nút b m h n là nút submit hay nút reset (<INPUT TYPE="button">) M t checkbox (<INPUT TYPE="checkbox">) Là m t ph n t t i file lên cho phép ng i s d ng g i lên m t file button checkbox FileUpload hidden password radio reset select submit text (<INPUT TYPE="file">) M t tr ng n (<INPUT TYPE="hidden">) u hi n M t tr ng text nh p m t kh u mà t t c các ký t nh p vào th là d u (*)(<INPUT TYPE="password">) M t nút b m (<INPUT TYPE="radio">) M t nút reset(<INPUT TYPE="reset">) M t danh sách l a ch n (<SELECT><OPTION>option1</OPTION> <OPTION>option2</OPTION></SELECT> ) M t nút submit (<INPUT TYPE="submit">) M t tr ng text (<INPUT TYPE="text">) .T o ra superscript cho chu i str.lastIndex0f(srchStr [. str.toLowerCase() i chu i str thành ch th ng.toUpperCase() i chu i str thành ch hoa. CÁC PH N T C A IT NG FORM Form c t o b i các ph n t cho phép ng i s d ng a thông tin vào. str. gi ng th <SUP>.sup() . gi ng th <SUB>. str. str.sub() .b) . Tham s index có th c s d ng xác nh v trí b t u tìm ki m trong chu i. str.JavaScript 55 str. Chu i str c tìm t ph i sang trái.T o ra m t subscript cho chu i str. Tham s href là URL ích c a liên k t.small() . str.strike() .Tr l i v trí trong chu i str v trí xu t hi n cu i cùng c a chu i srchStr. n i dung (ho c giá tr ) c a các ph n t s c chuy n n m t ch ng trình trên server qua m t giao di n c g i là Common Gateway Interface(Giao ti p qua m t c ng chung) g i t t là CGI S d ng JavaScript b n có th vi t nh ng o n scripts chèn vào HTML c a b n làm vi c v i các ph n t c a form và các giá tr c a chúng.Tr l i chu i con c a str là các ký t t v trí th a t i v trí th b.substring(a. Khi ó. str. Các ký t c m t trái sang ph i b t u t 0.index]) .

JavaScript 56 textArea M i ph n t có th M t tr c ng text cho phép nh p vàp nhi u dòng t tên JavaScript truy nh p n chúng qua tên <TEXTAREA>default text</TEXTAREA>) 4. Trong ví d sau. THU C TÍNH TYPE Trong m i ph n t c a form u có thu c tính type. Ví d : nh giá m t form s d ng ph n t button.HIDE FROM OTHER BROWSERS function calculate(form) { form. ch có hai nút b m có s n là submit và reset b i v d li u trong form ph i c g i t i m t vài a ch URL (th ng là CGI-BIN script) x lý và l u tr .21.entry. b n có th ch nh s a script nh giá bi u th c khi button c b m.value)..1. M t ph n t button c ch nh rõ khi s d ng th INPUT: <INPUT TYPE="button" NAME="name" VALUE= "buttonName"> Trong th INPUT. Ch có m t th s ki n duy nh t i v i button là onClick. <HTML> <HEAD> <TITLE>button Example</TITLE> <SCRIPT LANGUAGE= "JavaScript"> <!-. PH N T BUTTON nh rõ ki u c a Trong m t form HTML chu n. Xâu ó có th là m t trong các giá tr sau: Text field: "text" Radio button: "radio" Checkbox: "checkbox" Hidden field: "hidden" Submit button: "submit" Reset button: "reset" Password field: "password" Button: "button" Select list: "select-one" Multiple select lists: "select-multiple" Textarea field: "textarea" 4. m t tr ng text hay m t checkbox.Ph n t buttton có kh n ng m r ng cho phép ng i l p trình JavaScript có th vi t c m t o n mã l nh JavaScript th c thi vi c thêm vào m t nút b m trong m t script.. K t h p v i nó là cách th c duy nh t click.value = eval(form.results. thay vì s d ng onChange. ó là m t xâu ch ph n t c a vào nh nút b m. } . name là tên c a button. thu c tính VALUE có ch a nhãn c a button s c hi n th trên Navigator c a browser.1.20.

1.entry.checked) { // if(2) form. } ng: .blur()."> <BR> <INPUT TYPE="button" VALUE="Calculate" onClick="calculate(this.value).HIDE FROM OTHER BROWSERS function calculate(form.square. Cách th c và thu c tính checked defaultChecked name value click() Mô t Cho bi t tr ng thái hi n th i c a checkbox (thu c tính) Cho bi t tr ng thái m c Cho bi t tên c a ph n t tính) nh c a ph n t (thu c tính) c ch nh trong th INPUT (thu c c ch nh trong th Cho bi t giá tr hi n th i c a ph n t INPUT (thu c tính) Mô t m t click vào checkbox (Cách th c) Ph n t checkbox ch có m t th s ki n là onClick Ví d : T o h p checkbox nh p vào m t s r i l a ch n tính nhân ôi và bình ph <HTML> <HEAD> <TITLE>checkbox Example</TITLE> <SCRIPT> <!-.result.callingField) { if (callingField == "result") { // if(1) if (form. B ng d i ây là danh sách các thu c tính và các cách th c c a ph n t checkbox.22.JavaScript 57 // STOP HIDING FROM OTHER BROWSERS --> </SCRIPT> </HEAD> <BODY> <FORM METHOD=POST> Enter a JavaScript mathematical expression: <INPUT TYPE="text" NAME="entry" VALUE=""> <BR> The result of this expression is: <INPUT TYPE=text NAME="results" onFocus="this. B ng .form)."> </FORM> </BODY> </HTML> 4.value = Math.sqrt(form. Các thu c tính và cách th c c a ph n t checkbox. Các checkbox có nhi u thu c tính và cách th c h n button. PH N T CHECKBOX Các ph n t checkbox có kh n ng b t t t dùng ch n ho c không ch n m t thông tin.

"> <BR> Action (default double): <INPUT TYPE=checkbox NAME=square onClick="calculate(this.sqrt(form.callingField) { if (callingField == "result") { // if (1) if (form.result.this.value. } //enfzd if(3) }//end if(1) }//end function // STOP HIDING FROM OTHER BROWSERS --> </SCRIPT> </HEAD> <BODY> <FORM METHOD=POST> Value: <INPUT TYPE="text" NAME="entry" VALUE=0 onChange="calculate(this.value = Math."> </FORM> </BODY> </HTML> Trong script này. Th s ki n onClick trong checkbox c nh ngh a: (<INPUT TYPE=checkbox NAME=square onClick= "calculate( this.form.form.entry.result.value*form."> Square <BR> Result: <INPUT TYPE="text" NAME="result" VALUE=0 onChange="calculate(this.name). this.square.. b n có th thay i hàm calculate() nh sau: function calculate(form.form.value = form.value / 2. n u không.entry.JavaScript 58 else { form. N u h p này c check..result.value = form.this. b n ã th y cách s d ng th s ki n onClick c ng nh thu c tính checked là m t giá tr ki u Boolean có th dùng làm i u ki n trong câu l nh if.result. m t th c thi c m c nh s nhân ôi giá tr c a nó. } //end if(2) } else{ if (form.entry. t o ra s m r ng cho checkbox.entry. } else { form.this.name). ch ng trình s l y giá tr c a nó.checked) { // if(3) form.form.name).value * 2."> ) Khi ó n u ng i dùng thay i m t câu l nh khác. } .entry.value=form.else B n có th thêm m t checkbox tên là square vào form.checked) { // if (2) form.name).square. form s c tính toán l i.value).

4.result. ch có m t nút c ch n trong b t k m t th i i m nào. Nó cho phép a vào nh ng thông tin bí m t nh ng ký m t kh u. Không có cách th c hay th s ki n nào cho i t ng này. and select() ) và t ng ng v i các th s ki n: onFocus. 4. Ph n t file Upload c ch nh rõ trong JavaScript b ng i t ng FileUpload. PH N T PASSWORD i t ng Password là i t ng duy nh t trong các i t ng c a form mà khi gõ b t k ký t nào vào c ng u hi n th d u sao(*). Ph n này s c nói k h n trong i t ng text. name và value. tr ng Password có nhi u cách th c h n(focus().result.value.value = form. blur().26.square..1.25. i t ng Password có 3 thu c tính gi ng tr ng text là: defaultValue. 4.1. M i ng i có th s d ng trong JavaScript l u các giá tr trong su t m t script và tính toán không c n form.1. Không có cách th c hay th file cho i t ng này. onBlur. PH N T FILE UPLOAD Ph n t này cung c p cho form m t cách ng i s d ng có th ch rõ m t file a vào form x lý.entry.value = form. Tr ng hidden có th s d ng l u các giá tr c n thi t g it i server song song v i s xu t ra t form (form submission) nh ng nó không c hi n th trên trang. c hai u là giá tr xâu nh các i t ng khác.JavaScript 59 } } else { form.24. and onSelect. Khi nhi u radio c k t h p thành m t nhóm. Ví d dòng l nh sau t o ra m t nhóm radio có ba nút tên là test: <INPUT TYPE="radio" NAME="test" VALUE="1" chECKED>1<BR> <INPUT TYPE="radio" NAME="test" VALUE="2">2<BR> <INPUT TYPE="radio" NAME="test" VALUE="3">3<BR> .entry.result. Không gi ng v i hai ph n t trên.value * 2. i t ng ch có hai thu c tính là name và value.checked) { // if (3) form. } // end if (3) } // end if (1) } 4. PH N T RADIO i t ng radio g n gi ng s b t t t checkbox khi có hai nút radio k t h p thành m t nhóm.value*form.. PH N T HIDDEN Ph n t hidden là ph n t duy nh t trong s t t c các ph n t c a form không c hi n th trên Web browser.entry.entry. ó c ng là nh ng giá tr xâu gi ng các i t ng khác.value=form. i t ng hidden ch có hai thu c tính là name và value. //end if(2) else { if (form.1.23.value / 2. } else { form.

result.checked) { form.value / 2.value = form.checked" minh ho rõ cách dùng i t ng radio.value * 2. ta xem ví d sau: Ví d : <HTML> <HEAD> <TITLE>radio button Example</TITLE> <SCRIPT> <!-.value.value = form.callingField) { if (callingField == "result") { if (form.result.HIDE FROM OTHER BROWSERS function calculate(form. radio ch có m t th s ki n là onClick.value=form.test[1].entry. Có m t vài thu c tính ki m tra tr ng thái hi n th i c a m t nhóm nút radio.entry.value*form. Thu c tính và cách th c checked defaultChecked index length name value click() Mô t Mô t tr ng thái hi n th i c a ph n t radio (thu c tính) Mô t tr ng thái m c nh c a ph n t (thu c tính) c ch n hi n th i trong m t nhóm c ch nh trong th INPUT (thu c c nh ra trong th INPUT Mô t th t c a nút radio Mô t tên c a ph n t tính) Mô t t ng s nút radio trong m t nhóm Mô t giá tr hi n th i c a ph n t (thu c tính) Mô ph ng m t click trên nút radio (cách th c) C ng nh checkbox.JavaScript 60 Nhóm các nút radio l i b ng cách t cho chúng có cùng m t tên trong các th INPUT. Do m t nhóm radio g m nhi u ph n t radio.result.entry. } else { form. Các thu c tính và cách th c c a i t ng radio. } } else { if (form. Không có b t k m t i t ng form nào có thu c tính index và length.value = Math.test[1]" và có th ki m tra giá tr c a nó b ng "testform.value). B ng? . } else { form.entry. } } .action[1]. B ng sau hi n th các thu c tính và cách th c c a i t ng radio.sqrt(form. n u nhóm ó n m trong m t form có tên là "testform".checked) { form. b n có th g i t i nút radio th hai b ng tên "testform.entry.result. nên chúng c t trong m t m ng các nút radio và c ánh s t 0.action[1]. Trong ví d nhóm radio có tên test trên.

this.27. Ví d sau minh ho cách s d ng nút reset xoá các giá tr c a form.value2. i t ng reset th ng dùng xoá form. 4. B ng cách này.JavaScript 61 } // STOP HIDING FROM OTHER BROWSERS --> </SCRIPT> </HEAD> <BODY> <FORM METHOD=POST> Value: <INPUT TYPE="text" NAME="entry" VALUE=0 onChange="calculate(this. m t th s ki n onClick.value = "Cleared"."> Square <BR> Result: <INPUT TYPE=text NAME="result" VALUE=0 onChange="calculate(this. Thay cho m t checkbox trong ví d tr c.form."> </FORM> </BODY> </HTML> Trong ví d này.value = "Form".value1.name). PH N T RESET S d ng i t ng reset.checked.form.checked thành form.square.name). do ó hai nút này có th truy nh p b ng action[0] và action[1].form.name)."> <BR> Action:<BR> <INPUT TYPE="radio" NAME="action" VALUE="twice" onClick="calculate(this.this. và m t cách th c click(). b n có th tác ng ng c l i click vào nút Reset."> Double<BR> <INPUT TYPE="radio" NAME="action" VALUE="square" onClick="calculate(this. b n ch c n thay i tham chi u n hàm calculate() t form.this. C ng gi ng i t ng button.action[1].HIDE FROM OTHER BROWSERS function clearForm(form) { form.form. } // STOP HIDING FROM OTHER BROWSERS --> //SCRIPT> . s thay i t checkbox trên là r t khó nh n bi t.this. i t ng reset có hai thu c tính là name và value.name). form. ây ta s d ng hai nút radio v i hai giá tr khác nhau: double và square Nh ta ã bi t có th truy nh p n các nút radio qua m t m ng. H u h t nh ng ng i l p trình khong s d ng th s ki n onClick c a nút reset ki m tra giá tr c a nút này. Ví d : <HTML> <HEAD> <TITLE>reset Example</TITLE> <SCRIPT LANGUAGE="JavaScript"> <!-.1.

Ví d : <SELECT NAME="test"> <OPTION SELECTED>1 <OPTION>2 <OPTION>3 </SELECT> t o ra ba thành ph n c a menu th drop-down v i ba l a ch n 1. C vi c l a ch n các option và t ng ph n t option riêng bi t u có nh ng thu c tính.1. N u s d ng thu c tính MULTIPLE. b n có th s d ng nh sau: <SELECT NAME="test" SIZE=2> <OPTION SELECTED>1 <OPTION>2 <OPTION>3 </SELECT> Trong c hai ví d trên. ph n t select có thu c tính selectedIndex. b t menu drop-down trong m t menu cu n v i hai thành ph n hi n th ."> </FORM> </BODY> </HTML> 4. i t ng này t o ra m t vài thành ph n t ng t các button và radio. m ng là m t thu c tính c a i t ng select g i là options. Trong tr ng h p này. B sung thêm vào m ng option.28. Các danh dách c xây d ng b ng cách s d ng hai th SELECT và OPTION.form). S d ng thu c tính SIZE b n có th t o ta m t danh sách cu n v i s ph n t hi n th l n th nh t. PH N T SELECT Danh sách l a ch n trong các form HTML xu t hi n menu drop-down ho c danh sách cu n c c a các i t ng có th c l a ch n. có ch a s th t c a option c l a ch n hi n th i.2 và 3. b n có th cho phép ng i s d ng l a ch n nhi u h n m t giá tr trong danh sách l a ch n: <SELECT NAME="test" SIZE=2 M ULTIPLE> <OPTION SELECTED>1 <OPTION>2 <OPTION>3 </SELECT> Danh sách l a ch n trong JavaScript là i t ng select. V i các thành ph n l a ch n. M i option trong danh sách l a ch n u có m t vài thu c tính: . ng i s d ng ch có th có m t l a ch n.JavaScript 62 </HEAD> <BODY> <FORM METHOD=POST> <INPUT TYPE="text" NAME="value1"><BR> <INPUT TYPE="text" NAME="value2"><BR> <INPUT TYPE="reset" VALUE="Clear Form" onClick="clearForm(this. danh sách các l a ch n c ch a trong m t m ng c ánh s t 0.

JavaScript 63 DEFAULTSELECTED: cho bi t option có c m c nh là l a ch n trong th OPTION hay không.options[1].text = "two".options[0]. onFocus.options[0]. Tuy nhiên.options[2]. INDEX: ch a giá tr s th t c a option h ên th i trong m ng option.0 cho phép thay i n i dung c a danh sách l a ch n t JavaScript b ng cách liên k t các giá tr m i cho thu c tính text c a các th c th trong danh sách. i t ng select không có các cách th c c nh ngh a s n. Ví d .value = "The Second" example.options[1]. ó là onBlue. Có th thêm các l a ch n m i vào danh sách b ng cách s d ng i t ng xây d ng Option() theo cú pháp: ."> <OPTION SELECTED VALUE="Number One">1 <OPTION VALUE="The Second">2 <OPTION VALUE="Three is It">3 </SELECT> Có th thay i c dòng text hi n th trên nút th hai thành "two" b ng: example. thì th onFocus s th c hi n. Ví d b n có danh sách l a ch n sau: <SELECT NAME="example" onFocus="react().selected = false N u ng i s d ng kích vào menu và l a ch n option th hai. onChange.options[1].selected = true S a các danh sách l a ch n Navigator 3.options[2]."> <OPTION SELECTED VALUE="Number One">1 <OPTION VALUE="The Second">2 <OPTION VALUE="Three is It">3 </SELECT> Khi l n u tiên hi n th b n có th truy nh p t i các thông tin sau: example. trong ví d tr c. SELECTED: cho bi t tr ng thái hi n th i c a option TEXT: có ch a giá tr c a dòng text hi n th trên menu cho m i option. và thu c tính value m i giá tr ch ra trong th OPTION. i t ng select có ba th s ki n.selectedIndex = 1 example.text = "3" example.selectedIndex = 0 example. chúng u là nh ng i t ng text.defaultSelected = true example.options[1]. b n ã t o ra m t danh sách l a ch n nh sau: <SELECT NAME="example" onFocus="react().text = "3" example.value = "The Second" example. và khi ó giá tr c a thu c tính s là: example.options[1].defaultSelected = true example.

nh ng các ký t c a nó hi n ra bình th ng. blur() và select(). Vi c t o i t ng option() này v i dòng text c ch tr c. tr ng text cho phép nh p vào m t dòng n. name và value. B ng . Các l a ch n có th b xoá trong danh sách l a ch n b ng cách g n giá tr null cho i t ng mu n xoá selectListName. onChange. selectListName.JavaScript 64 newOptionName = new Option(optionText. optionValue. Cách th c và thu c tính defaultValue name value focus() blur() select() Mô t Ch ra giá tr m c nh c a ph n t trong th INPUT (thu c tính) Tên c a i t (thu c tính) ng c ch ra c ch ra trong th INPUT Giá tr hi n th i c a ph n t (thu c tính) Mô t vi c con tr t i tr Mô t vi c con tr r i tr ng text (cách th c) ng text (cách th c) ng text Mô t vi c l a ch n dòng text trong tr (cách th c) . onFocus. i t ng submit có s n thu c tính name và value. B ng sau mô t các thu c tính và cách th c c a i t ng text.options[index] = newOptionName.2 Ph n t Text Ph n t này n m trong nh ng ph n t hay c s d ng nh t trong các form HTML. cách th c click() và th s ki n onClick. c ng nh nút Reset. 1. i t ng này c liên k t vào danh sách l a ch n c th c hi n b ng index. T ng t nh tr ng Password. defaultSelected và selected nh trên ã nh ra nh ng giá tr ki u Boolean.options[index] = null. onSelect. Ba cách th c mô ph ng s ki n c a ng i s d ng: focus(). i t ng text có ba thu c tính:defautValue. selected). Gi ng nh i t ng button và reset.Các thu c tính và cách th c c a i t ng text. Có 4 th s ki n là: obBlur.1 Ph n t submit Nút Submit là m t tr ng h p c bi t c a button. defaultSelected. Nút này a thông tin hi n t i t các tr ng c a form t i a ch URL c ch ra trong thu c tính ACTION c a th form s d ng cách th c METHOD ch ra trong th FORM. Chú ý các s ki n này ch th c hi n khi con tr ã c kích ra ngoài tr ng text. 1.

currentField) { if (currentField == "first") form.HIDE FROM OTHER BROWSERS function echo(form. <HTML> <HEAD> <TITLE>text Example</TITLE> <SCRIPT LANGUAGE="JavaScript"> <!-."> </FORM> </BODY> </HTML> 1. Trong ví d sau ây.first.form."> <INPUT TYPE=text NAME="second" onChange="echo(this.name).second. else form.this.second.value. Ví d .first.3 Ph n t Textarea Th TEXTAREA cung c p m t h p cho phép nh p s dòng text do ng i thi t k nh tr c. Ví d : <TEXTAREA NAME="fieldName" ROWS=10 COLS=25> Default Text Here </TEXTAREA> .value. } // STOP HIDING FROM OTHER BROWSERS --> </SCRIPT> </HEAD> <BODY> <FORM> <INPUT TYPE=text NAME="first" onChange="echo(this.value = form.JavaScript 65 M t chú ý quan tr ng là có th gán giá tr cho tr ng text b ng cách liên k t các giá tr v i thu c tính value.form.name). và m i dòng text c a vào tr ng text th hai l i c l p l i trong tr ng texxt th nh t.value = form. T ng c p nh t các tr ng text . d òng text c a vào tr ng u tiên c l p l i trong tr ng text th hai. Kh n ng này c a nó có th áp d ng t ng c p nh t ho c thay i d li u.this.

forms[] thay vì g i b ng tên form. nó r t h u d ng cho phép g i t i các form có liên quan trong cùng m t trang. Có th g i b ng document. onSelect. h n n a còn có th g i document. các th s ki n onBlur. <HTML> <HEAD> <TITLE>forms[] Example</TITLE> </HEAD> <BODY> <FORM METHOD=POST> <INPUT TYPE=text onChange="document.forms[1]. Ví d b n t o ra m t form sau: <FORM METHOD=POST NAME=testform> <INPUT TYPE="text" NAME="one"> <INPUT TYPE="text" NAME="two"> <INPUT TYPE="text" NAME="three"> </FORM> b n có th g i t i ba thành ph n này nh sau: document. name.value. M ng form[] Các th s ki n c thi t k làm vi c v i các form riêng bi t ho c các tr ng m t th i i m. M ng form[] c p n ây có th có nhi u xác nh các nhân c a form trên cùng m t trang và have information in a single field match in all three forms."> . document. Dòng "Defautl Text Here"s xu t hi n trong tr ng này vào l n hi n th u tiên.value = this. document. các cách th c focus(). document. Trong script này.testform. document. C ng nh ph n t text . onForcus.elements[2]. và value.elements[1]. JavaScript cung c p cho b n các thu c tính defaultValue. b n có hai tr ng text nh p và n m trên hai form c l p v i nhau.testform. và blur().JavaScript 66 ví d này t o ra m t tr ng text cho phép a vào 10 hàng . 2.two. Thu c tính này th ng c s d ng trong các m i quan h tu n t c a các ph n t h n là dùng tên c a chúng.elements[0]. 3.one.elements[0].m i hàng 25 ký t . M ng elements[] Các i t ng c a form có th c g i t i b ng m ng elements[]. S d ng m ng form b n có th t ng tác trên các giá tr c a các tr ng trong hai form cùng m t lúc khi ng i s d ng thay i giá tr trên m t form. onChange.testform.three. select().

th s ki n cho vi c submit Thu c tính ki u cho các nút b m c a HTML (<INPUT TYPE=button>) Thu c tính ki u cho các checkbox c a HTML (<INPUT TYPE=checkbox>) form .JavaScript 67 </FORM> <FORM METHOD=POST> <INPUT TYPE=text onChange="document.forms[0]. danh sách l a ch n) tính xâu ch a ki u MIME s d ng khi chuy n thông tin t form t i server tính Xâu ch a giá tr thu c tính NAME trong th FORM tính Xâu ch a tên c a s form submition ích b i m t form.value = this."> </FORM> </BODY> </HTML> M t khác.elemrnts Ki u Mô t cách th c JavaScript Mô t vi c d ch chuy n con tr t m t ph n t cách th c JavaScript Xâu ch a giá tr c a thu c tính ACTION trong th FORM thu c JavaScript thu c JavaScript thu c JavaScript thu c JavaScript thu c JavaScript Th s ki n thu c tính HTML thu c tính HTML tính m ng ch a danh sách các ph n t trong form (nh checkbox. tr ng text.name 4.encoding form.forms["name"] ho c document.name form.submit type onSubmit button checkbox cách th c JavaScript Mô t vi c submit m t form HTML tính ánh x ki u c a m t ph n t thành m t xâu.value.elements[0]. Xem l i các l nh và m r ng L nh/ M r ng blur() form.action form. b n c ng có th truy nh p n form b n g tên form c t trong th FORM: <FORM METHOD=POST NAME="name"> Khi ó b n có th g i là document.target form.

JavaScript 68 pasword thu c tính HTML Thu c tính ki u cho các dòng pasword c a HTML(<INPUT TYPE=password>) Thu c tính ki u cho các nút radio c a HTML (<INPUT TYPE=radio>) Thu c tính ki u cho các nút reset c a HTML (<INPUT TYPE=reset>) H p th cho danh sách l a ch n ch ra các l a ch n trong danh sách l a ch n(<SELECT><OPTION>Option 1<OPTION>Option 2</SELECT>) Thu c tính ki u c a nút submit (<INPUT TYPE=submit>) Thu c tính ki u c a tr ng trong form (<INPUT TYPE=text>) H p th cho nhi u dòng (<TEXTAREA> defautl </TEXTAREA>) text text radio reset SELECT OPTION thu c tính HTML thu c tính HTML th HTML th HTML submit text TEXTAREA thu c tính HTML thu c tính HTML Th HTML name value thu c JavaScript thu c JavaScript tính Xâu ch a tên ph n t HTML (button. checkbox. password.) tính Xâu ch a giá tr hiên th i c a m t ph n t HTML(button.. submit) tính Giá tr ki u Boolean mô t m t l a ch n check(checkbox. text. radio button) tính Xâu ch a giá tr m c nh c a m t ph n t HTML (password. text.) click() onClick cách th c JavaScript Mô t vi c kích vào m t ph n t trên form (button. checkbox.password) thu c JavaScript thu c JavaScript thu c JavaScript tính Th s ki n cho s ki n kích (button. textarea) cách th c JavaScript Mô t vi c con tr r i kh i m t ph n ... reset.. radio button. checkbox. checkbox. password. selection list. textarea) checked defaultChecked focus() blur() cách th c JavaScript Mô t vi c con tr t i m t ph n t (password.

text. textarea) tính Là m t s nguyên mô t l a ch n hi n th i trong m t nhóm l a ch n (radio button) tính S nguyên mô t t ng s các l a ch n trong m t nhóm các l a ch n (radio button) tính Giá tr Boolean mô t khi có m t l a ch n c t là m c nh (seledtion list) tính M ng các l a ch n trong danh sách l a ch n tính Dòng text hi n th cho m t thành ph n c a menu trong danh sách l a ch n H p th cho các b ng HTML H p th cho các hàng c a m t b ng HTML H p th cho các ô c a m t hàng trong m t b ng HTML Là thu c tính c a th TD mô t trong m t ô c a b ng có nhi u c t Là thu c tính c a th TD mô t trong onSelect Th s ki n index thu c JavaScript thu c JavaScript thu c JavaScript thu c JavaScript thu c JavaScript th HTML th HTML th HTML length dafautlSelected options text TABLE TR TD COLSPAN ROWSPAN thu c tính HTML thu c tính HTML . text. text. textarea) Th s ki n cho s (password. text. onBlur Th s ki n onChange Th s ki n Th s ki n cho s ki n khi giá tr c a tr ng thay i (password. text. text. selection textarea) ki n blur list. textarea) Th s ki n khi ng i s d ng ch n dòng text trong m t tr ng (password. selection list. textarea) cách th c JavaScript Mô t vi c l a ch n dòng text trong m t tr ng (password. selection list. textarea) Th s ki n Th s ki n cho s ki n focus(password.JavaScript 69 t select() onFocus() (password.

thu c JavaScript tính Giá tr nguyên c a s th t cu i cùng trong xâu string ký t Math.substring() tính m ng c a các i t ng form v i m t danh sách các form trong m t document cách th c JavaScript Tr l i m t xâu con c a xâu string t tham s v trí ký t u n v trí ký t cu i cách th c JavaScript Tr l i m t giá tr nguyên ti p theo nh h n giá tr c a tham s a vào.JavaScript 70 m t ô c a b ng có nhi u hàng BODER thu c tính HTML Là thu c tính c a th TABLE mô t r ng ng vi n c a b ng document.length .floor() string.forms[] thu c JavaScript string.

Ki u m ng này c hi u nh m t m ng có kh n ng liên k t b i m i m t ph n t trong ó u có th liên k t n m t giá tr xâu nào ó. obj_name) { var result=´´ for (i in obj) result=result+ obj_name + ³.make = Ford myCar. minh ho vi c mày c th c hi n nh th nào.year = 69. B n nh ngh a m t thu c tính b ng cách gán cho nó m t giá tr . Ví d c ng có th truy nh p t i các thu c tính c a i t ng myCar trên b ng m ng nh sau: myCar[make] = ³Ford³ myCar[model] = ³Mustang³ myCar[year] = 69. b n có th t o nó . Ví d .propertyName C tên i t ng và tên thu c tính u nh y c m. gi s có m t i t ng tên là myCar (trong tr ng h p này gi s i t ng này ã t n t i s n sàng). Tuy nhiên. model và year c a nó nh sau: myCar.year = 69.2. Có m t m ng l u tr t p h p các giá tr tham chi u t i t ng bi n. b n c ng có th t o ra nh ng i t ng c a riêng b n. B n có th truy nh p n các thu c tính c a nó b ng cách g i : objectName. Thu c tính và m ng trong JavaScript có quan h m t thi t v i nhau. T O CÁC IT NG M I C JavaScript client-side và server-side u có m t s i t ng c nh ngh a tr c. B n có th l y các thu c tính có tên make. function show_props (obj. hàm sau ây s hi n th các thu c tính c a m t i t ng thông qua tham s v ki u i t ng ó và tên i t ng. Trong JavaScript 1.model = Mustang myCar. th c ra chúng ch khác nhau v cách giao ti p v i cùng m t c u trúc d li u. n u b n ch mu n t o ra m t i t ng duy nh t c a m t ki u i t ng.make = ³Ford³ myCar.JavaScript 71 5.´myCar´) s hi n lên: myCar.´+ i+ ³=´ + obj[i] + ³\n´ return result } Khi g i hàm show_props(myCar. MÔ HÌNH IT IT NG (OBJECT MODEL) NG VÀ THU C TÍNH Nh ã bi t.model = ³Mustang³ myCar. m t i t ng trong JavaScript có các thu c tính i kèm v i nó.

thì m ng s c t o v i nh ng ch n tr ng cho nh ng ph n t ch a c nh ngh a nh ví d d i ây: N u m t m ng c t o b ng cách kh i t o(initializer) m c cao nh t. n u s d ng vi c kh i t o này trong m t hàm thì m i l n g i hàm. JavaScript s ánh giá l i nó m t l n..1. b n có th t o ra m t hàm xây d ng tr c. N u nh b n không c n dùng n i t ng ó trong m i ch . m i l n m ng ó xu t hi n trong các bi u th c. Tuy nhiên. .1. m i l n i t ng ó xu t hi n trong các bi u th c. trong Navigator 4. N u b n t hai d u ph y vào hàng. sau ó t o ra các i t ng có ki u c a hàm ó b ng toán t new 5. m i propertyI là m t xác minh (có th là m t tên. b n không c n ph i gán nó cho m t bi n. element1. B n không c n ph i ch nh rõ t t c các ph n t trên m ng m i.. N u m t i t ng c t o b ng cách kh i t o i t ng m c cao nh t. i t ng s c kh i t o m t l n Gi s b n có câu l nh sau: if (condition) x={hi: ´there. Khi b n t o m t m ng b ng cách s d ng ph ng pháp kh i t o. và m i elementI là giá tr c a ph n t v trí ó c a m ng.B n s d ng cách này khi b n ch mu n t o ra m t cá th n l ch không ph i nhi u cá th c a i t ng.0. Ngoài ra. Ngoài ra. Có th l a ch n kh i t o b ng tên i t ng ho c ch b ng các khai báo. b n có th t o ra m t i t ng b ng cách s d ng m t kh i t o i t ng.. m ng s c kh i t o m tl n Ví d 1: T o m t m ng coffees v i 3 ph n t và dài c a m ng là 3: ..0. JavaScript s ánh giá l i nó m t l n. và chi u dài c a m ng chính là s các tham s . arrayName là tên c a m ng m i..wheels:4. Ho c n u b n mu n t o ra nhi u cá th c a m t ki u i t ng. propertyN: valueN} Trong ó objectName là tên c a i t ng m i. Cú pháp t o m ng b ng cách này khác v i t o i t ng: arrayName=[element0.2}} Chú ý r ng thu c tính engine c ng là m t i t ng v i các thu c tính c a nó Trong Navigator 4. m t s ho c m t xâu ký t ) và m i valueI là m t bi u th c mà giá tr c a nó c gán cho propertyI. thì nó s coi m i giá tr là m t ph n t trên m ng. b n c ng có th s d ng m t kh i t o t o m t m ng. property2: value2.JavaScript 72 b ng cách s d ng kh i t o i t ng.. b n ch có th t o ra m t i t ng b ng cách s d ng hàm xây d ng chúng ho c s d ng m t hàm c cung c p b i m t vài i t ng khác t c m c ích. JavaScript s t o ra m t i t ng và g n nó vào bi n x n u bi u th c condition c ánh giá là úng Còn ví d sau t o ra m t i t ng myHonda v i 3 thu c tính: myHonda={color:´red´.´} Trong tr ng h p này.elementN] Trong ó.engine:{cylinder:4. n u s d ng vi c kh i t o này trong m t hàm thì m i l n g i hàm. S D NG KH I T O I T NG Trong nh ng phiên b n tr c c a Navigator.size:2. Cú pháp t o ra m t i t ng b ng cách kh i t o i t ng (Object Initializers): objectName={property1: value1..

JavaScript

73

coffees = [³French Roast´,´Columbian´,´Kona´]

Ví d 2: T o ra m t m ng v i 2 ph n t
fish = [³Lion´, ,´ Surgeon´]

c kh i

u và m t ph n t r ng: c

V i bi u th c này, fish[0] là ³Lion´, fish[2] là ´ Surgeon´, và fish[2] ch a nh ngh a
5.1.2. S D NG M T HÀM XÂY D NG(CONSTRUCTOR FUNCTION)

B n có th t o ra i t ng c a riêng mình v i hai b c sau: 1. nh ngh a ki u c a i t ng b ng cách vi t m t hàm xây d ng. 2. T o ra m t cá th c a i t ng ó b ng toán t new nh ngh a m t ki u i t ng, ta ph i t o ra m t hàm ch nh rõ tên, các thu c tính và các cách th c c a ki u i t ng ó. Ví d gi s b n mu n t o m t ki u i t ng ô tô v i tên là car, có các thu c tính make, model, year và color, th c hi n vi c này có th vi t m t hàm nh sau:
function car(make, model, year ){ this.make = make this.model = model this.year = year }

Chú ý vi c s d ng toán t this gán giá tr cho các thu c tính c a ph i thông qua các tham s c a hàm. Ví d , b n có th t o m t i t ng m i ki u car nh sau:
mycar = new car(³Eagle´,´Talon TSi´,1993)

it

ng

Câu l nh này s t o ra i t ng mycar và liên k t các giá tr c a vào v i các thu c tính. Khi ó giá tr c a mycar.make là ³Eagle´, giá tr c a mycar.model là ³Talon TSi´, và mycar.year là m t s nguyên 1993....C nh v y b n có th t o ra nhi u i t ng ki u car. M t i t ng c ng có th có nh ng thu c tính mà b n thân nó c ng là m t i t ng. Ví d b n nh ngh a thêm m t i t ng khác là person nh sau:
function person(name, age, sex){ this.name=name this.age=age this.sex=sex }

Và sau ó ta t o ra hai ng

i m i:

rank = new person(³Rank McKinnon´,33,´M´) ken = new person(³Ken John´,39,´M´)

Bây gi b n

nh ngh a l i hàm xây d ng car nh sau:

function car(make, model, year,owner ){ this.make = make this.model = model this.year = year this.owner = owner }

JavaScript

74

Nh v y b n có th t o

it

ng ki u car m i:

car1 = new car(³Eagle´,´Talon TSi´,1993,rank) car2 = new car(³Nissan´,´300ZX´,1992,ken)

Nh v y, thay vì ph i qua m t xâu ký t hay m t giá tr s khi t o i t ng, ta ch c n a hai i t ng ã c t o câu l nh trên vào dòng tham s c a i t ng m i t o. Ta c ng có th l y c thu c tính c a i t ng owner b ng câu lênh sau:
car2.owner.name

Chú ý r ng b n c ng có th t o ra m t thu c tính m i cho nó, ví d :
car1.color=´black´

it

ng tr

c khi

nh ngh a

Nh v y, thu c tính color c a i t ng car1 c gán là ³black´. Tuy nhiên, nó s không gây tác ng t i b t k m t i t ng ki u car nào khác. N u mu n thêm thu c tính cho t t c các i t ng thì ph i nh ngh a l i hàm xây d ng i t ng.
5.1.3. L P M C L C CHO CÁC THU C TÍNH C A I T NG

Trong Navigator 2.0, b n có th g i thu c tính c a m t i t ng b ng tên thu c tính ho c b ng s th t c a nó. Tuy nhiên t Navigator 3.0 tr i, n u ban u b n nh ngh a m t thu c tính b ng tên c a nó, b n s luôn luôn ph i g i nó b ng tên, và n u b n nh ngh a m t thu c tính b ng ch s thì b n c ng luôn luôn ph i g i t i nó b ng ch s . i u này ng d ng khi b n t o m t i t ng v i nh ng thu c tính c a chúng b ng hàm xây d ng (nh ví d v ki u i t ng car ph n tr c) và khi b n nh ngh a nh ng thu c tính c a riêng m t i t ng (nh mycar.color=´red´). Vì v y n u b n nh ngh a các thu c tính c a i t ng ngay t u b ng ch s nh mycar[5]=´25 mpg´, b n có th l n l t g i t i các thu c tính khác nh mycar[5]. Tuy nhiên i u này là không úng i v i nh ng i t ng t ng ng c a HTML nh m ng form. B n có th g i t i các i t ng trong m ng b i s th t ho c tên c a chúng. Ví d th <FORM> th hai trong m t document có thu c tính NAME là ³myform´ thì b n có th g i t i form ó b ng document.form[1] ho c document.form[³myForm´] ho c document.myForm
5.1.4. T NH NG NGH A THÊM CÁC THU C TÍNH CHO M T KI U I

B n có th thêm thu c tính cho m t ki u i t ng ã c nh ngh a tr c b ng cách s d ng thu c tính property. Thu c tính c nh ngh a này không ch có tác d ng i v i m t i t ng mà có tác d ng i v i t t c các i t ng khác cùng ki u.Ví d sau th c hi n thêm thu c tính color cho t t c các i t ng ki u car, sau ó g n m t giá tr màu cho thu c tính color c a i t ng car1:
car.prototype.color=null car1.color=´red´

5.1.5.

NH NGH A CÁC CÁCH TH C

M t cách th c là m t hàm c liên k t v i m t i t ng. B n nh ngh a m t cách th c c ng có ngh a là b n nh ngh a m t hàm chu n. B n có th s d ng cú pháp sau g n m t hàm cho m t i t ng ang t n t i:
object.methodname = function_name

JavaScript

75

Trong ó object là i t ng ang t n t i, methodname là tên cách th c và function_name là tên hàm B n có th g i cách th c này t i t ng nh sau:
object.methodname(<tham s >)

B n có th nh ngh a cách th c cho m t ki u i t ng b ng cách a cách th c ó vào trong hàm xây d ng i t ng. Ví d b n có th nh ngh a m t hàm có th nh d ng và hi n th các thu c tính c a các i t ng ki u car ã xây d ng ph n tr c:
function displayCar () { var result = ³Abeautiful´+this.year+ ³ ´+ this.make + ³ ´+ this.model document.write(result) }

B n có th thêm cách th c này vào cho sau vào hàm nh ngh a i t ng
this.displayCar= displayCar;

it

ng car b ng cách thêm dòng l nh

Nh v y có th

nh ngh a l i

it

ng car nh sau:

function car(make, model, year,owner ){ this.make = make this.model = model this.year = year this.owner = owner this.displayCar= displayCar }

Sau ó, b n có th g i cách th c displayCar
car1.displayCar() car2.displayCar()

iv im i

it

ng:

5.1.6. S D NG REFERENCES)

CHO

CÁC

THAM

CHI U

I

T

NG

(OBJECT

JavaScript có m t t khoá c bi t là this mà b n có th s d ng nó cùng v i m t cách th c g i t i i t ng hi n th i. Ví d , gi s b n có m t hàm validate dùng xác nh n giá tr thu c tính c a m t i t ng n m trong m t kho ng nào ó: function validate(obj, lowval, hival){ if ( (obj.value<lowdate)||(obj.value>hival) ) alert(³Invalid value!´) } Sau ó b n có th g i hàm validate t m i th s ki n onChange: <INPUT TYPE=´TEXT´ NAME=´AGE´ SIZE=3 onChange=´validate(this,18,99)´ > Khi liên k t v i m t thu c tính form, t khoá this có th g i t i form cha c a i t ng hi n th i. Trong ví d sau, myForm có ch a i t ng Text và m t nút b m. Khi ng i s d ng kích vào nút b m, tr ng text s hi n th tên form. Th s ki n onClick c a nút b m s d ng this.form g i t i form cha là myForm. <FORM NAME=´myForm´> Form name:<INPUT TYPE=´text´ NAME=´text1´ VALUE=´Beluga´> <P>

0 cho phép b n có th xoá m t i t ng b ng cách t cho nó tr t i giá tr Null (n u nh ó là l n cu i cùng g i t i i t ng).form.form. Trong khi JavaScript cho Navigator 3.7. b n không th xoá các i t ng-chúng v n t n t i trong khi b n ã r i kh i trang ó. . XOÁ I T NG Trong JavaScript cho Navigator 2.JavaScript 76 <INPUT TYPE=´button´ NAME=´button1´ value=´Show Form Name´ onClick=´this.value=this.name´> </FORM> 5.1. JavaScript s óng i t ng ó ngay l p t c thông qua bi u th c gán.0.text1.

JavaScript 77 6. B NG T NG K T CÁC T KHOÁ c Sau ây là các t oc s d ng là tên bi n: abstract boolean break byte case catch char class const continue default do double else nh ngh a là m t ph n trong ngôn ng JavaScript và không eval extends false final finally float for function goto if implements import in instanceof int interface long native new null package parseFloat parseInt private protected public return short static super switch synchrinized this throw throws transient true try var void while with .

com ) ngôn ng này. .netscape. b n nên n v i trang có các thông tin m i nh t v Web c a hãng Netscape ( http://www. tài li u không nh ng ã gi i thiêu s qua v JavaScript. ho c JavaScript Guide Do JavaScript là ngôn ng còn m i và có s thay i nhanh chóng. T NG K T Nh v y.JavaScript 78 7. B n có th tham kh o toàn di n JavaScript trong quy n Teach Yourself JavaScript in 14 Days. mà nó còn là sách tham kh o h t s c h u ích phát tri n ng d ng c a b n.

Sign up to vote on this title
UsefulNot useful