Documente Academic
Documente Profesional
Documente Cultură
1
Gio trnh JavaScript
***
chng 1 Li ni u.................................................................................................... 4
Chng 2 Nhp mn JavaScript..................................................................................... 5
2.1.Nhng JavaScript vo fle HTML.....................................................................5
2.3. Th <NScript! v <"NS#$%&T!.................................................................'
2.3. Hi(n th) *+t ,-ng te.t................................................................................/
2.0. 1iao ti2p v3i ng4i 56 ,7ng.............................................................................8
2.5. 9i(* l:i c;c l<nh v *= r+ng......................................................................12
Chng 3 i!n tr"ng JavaScript...................................................................................13
3.1. >i2n v ph?n lo:% @i2n...............................................................................13
3.2. >i(A ,iBn tC tD trong JavaScript..................................................................13
3.3. Ei(A ,F li<A............................................................................................... 13
1.1.1. E%(A ngAGHn I%ntergerJ.........................................................................10
1.1.2. Ei(A ,KA phLG M+ng INloating &ointJ...................................................10
1.1.3. Ei(A logic I>ooleanJ.............................................................................15
1.1.0. Ei(A chAOi IStringJ...............................................................................15
2. Xy dng cc biu thc trong JavaScript........................................16
#nh ngh$a v% ph&n '"() *i+u th,c..........................................................................1-
C.c t".n t/ 0"p1rat"r2................................................................................................. 1-
2.1.1. 1;n....................................................................................................... 1'
2.1.2. So 5;nh................................................................................................. 1'
2.1.3. SD hPc.................................................................................................. 1/
2.1.0. #hAOi.................................................................................................... 1/
2.1.5. Logic..................................................................................................... 1/
2.1.'. >itQi5e................................................................................................. 1R
%i tp13
2.1./. #?A hSi................................................................................................ 18
2.1.R. TrT l4i................................................................................................... 18
. !c "#nh........................................................................................2$
C&u '4nh i5u 6i4n.................................................................................................. 27
C&u '4nh '8p............................................................................................................ 21
3.1.1. U-ng lVp Wor........................................................................................ 21
3.1.2. Qhile..................................................................................................... 22
3.1.3. >reaX.................................................................................................... 22
3.1.0. continAe............................................................................................... 22
C.c c&u '4nh tha" t.c tr9n :i t;ng...........................................................................23
Ehoa Toan tinY 9:i hPc ZADc gia H N+i
JavaScript
2
3.1.5. Wor...in................................................................................................... 23
3.1.'. neQ...................................................................................................... 20
3.1./. thi5....................................................................................................... 2'
3.1.R. Qith...................................................................................................... 2'
C.c h%m 0<uncti"n=2................................................................................................... 2>
C.c h%m c =?n......................................................................................................... 23
3.1.8. eval...................................................................................................... 28
3.1.1[. par5e%nt................................................................................................ 3[
3.1.11. par5eNloat............................................................................................ 31
@Ang 0BrraC2.............................................................................................................. 32
SD 6i4n....................................................................................................................... 34
%i tp3>
3.1.12. #?A hSi................................................................................................ 3/
3.1.13. TrT l4i................................................................................................... 38
%. !c &'i t(ng trong JavaScript..........................................................%2
E:i t;ng navigat"r........................................................................................................ 44
E:i t;ng FinG"F........................................................................................................... 45
0.1.1. #;c thA+c t\nh..................................................................................... 05
0.1.2. #;c ph]ng th^c....................................................................................0'
0.1.3. #;c ch]ng tr_nh .6 l` 5a Xi<n.............................................................0/
E:i t;ng '"cati"n.......................................................................................................... 4>
E:i t;ng Hram1............................................................................................................. 4I
0.1.0. #;c thA+c t\nh..................................................................................... 0R
0.1.5. #;c ph]ng th^c....................................................................................0R
0.1.'. S6 ,7ng Nra*e..................................................................................... 0R
E:i t;ng G"cum1nt....................................................................................................... 57
0.1./. #;c thA+c t\nh..................................................................................... 51
0.1.R. #;c ph]ng th^c....................................................................................51
E:i t;ng anch"r=.......................................................................................................... 51
E:i t;ng H"rm=.............................................................................................................. 52
0.1.8. #;c thA+c t\nh..................................................................................... 52
0.1.1[. #;c ph]ng th^c....................................................................................52
0.1.11. #;c ch]ng tr_nh .6 l` 5a Xi<n.............................................................52
E:i t;ng hi=t"rC............................................................................................................ 53
0.1.12. #;c thA+c t\nh..................................................................................... 53
0.1.13. #;c ph]ng th^c....................................................................................53
E:i t;ng 'in6=............................................................................................................... 53
0.1.10. #;c thA+c t\nh..................................................................................... 53
0.1.15. #;c ch]ng tr_nh .6 l` 5a Xi<n.............................................................50
Ehoa Toan tinY 9:i hPc ZADc gia H N+i
JavaScript
3
E:i t;ng @ath............................................................................................................... 54
0.1.1'. #;c thA+c t\nh..................................................................................... 50
0.1.1/. #;c ph]ng th^c....................................................................................50
E:i t;ng Jat1............................................................................................................... 55
0.1.1R. #;c ph]ng th^c....................................................................................55
E:i t;ng String............................................................................................................. 5-
0.1.18. #;c ph]ng th^c....................................................................................5'
C.c phn t/ cKa :i t;ng <"rm...................................................................................5>
0.1.2[. ThA+c t\nh tGpe...................................................................................5R
0.1.21. &hbn t6 @Atton..................................................................................... 5R
0.1.22. &hbn t6 checX@o..................................................................................58
0.1.23. &hbn t6 Nile cploa,..............................................................................'1
0.1.20. &hbn t6 hi,,en..................................................................................... '1
0.1.25. &hbn t6 &a55Qor,.................................................................................'1
0.1.2'. &hbn t6 ra,io........................................................................................ '2
0.1.2/. &hbn t6 re5et........................................................................................ '0
0.1.2R. &hbn t6 5elect...................................................................................... '0
). *+ hnh &'i t(ng ,-b./ct *od/"0....................................................1%
E:i t;ng v% thuLc tMnh................................................................................................. >4
N(" c.c :i t;ng mOi.................................................................................................... >5
5.1.1. S6 ,7ng Xh=i t:o MDi tdng...................................................................../5
5.1.2. S6 ,7ng *+t h* .?G ,angI#on5trActor NAnctionJ............................./'
5.1.3. Lep *7c l7c cho c;c thA+c t\nh cfa MDi tdng.......................................//
5.1.0. 9)nh nghga thH* c;c thA+c t\nh cho *+t Xi(A MDi tdng....................../R
5.1.5. 9)nh nghga c;c c;ch th^c..................................................................../R
5.1.'. S6 ,7ng cho c;c tha* chi2A MDi tdng I@hect $eWerence5J................../8
5.1./. io; MDi tdng......................................................................................... /8
6. 23ng t4ng 56t cc t7 5ho.............................................................8$
1. 94ng 56t......................................................................................81
Ehoa Toan tinY 9:i hPc ZADc gia H N+i
JavaScript
0
ch:ng 1 ;<i n=i &>u
U3i HTML an, Micro5oWt Nront&age @:n Mj @i2t c;ch t:o ra trang ke@ l
tAG nhiHn chm *3i = *^c @i(A ,iBn thnng tin ch^ cha phTi l c;c trang
ke@ M+ng co XhT npng M;p ^ng c;c 5a Xi<n tC ph\a ng4i ,qng. Hjng
Net5cape Mj Ma ra ngnn ngF 5cript co tHn l LiveScript M( thac hi<n
ch^c npng nG. SaA Mo ngnn ngF nG Mdc Mri tHn thnh JavaScript
M( ten ,7ng t\nh M:i chng cfa ngnn ngF lep tr_nh Java. MVc ,q co
nhFng Mi(* t]ng Msng giFa Java v JavaScriptY nhng chng vtn l
hai ngnn ngF riHng @i<t.
JavaScript l ngnn ngF ,3i ,:ng 5cript co th( gun v3i c;c fle HTML. No
Xhnng Mdc @iHn ,)ch * Mdc tr_nh ,AG<t ,iBn ,)ch. Ehnng giDng Java
phTi chAG(n thnh c;c *j ,B @iHn ,)chY tr_nh ,AG<t MPc JavaScript ,3i
,:ng *j ngAsn. #h\nh v_ veG @:n co th( ,B ,ng hPc JavaScript vAa
v\ ,7 @=i v_ @:n co th( thKG c;ch 56 ,7ng JavaScript trHn c;c trang
ke@.
JavaScript l ngnn ngF ,aa trHn MDi tdngY co nghga l @ao gs* nhiwA
Xi(A MDi tdngY v\ ,7 MDi tdng Math v3i tKt cT c;c ch^c npng to;n hPc.
TAG veG JavaScript Xhnng l ngnn ngF h3ng MDi tdng nh #xx haG Java
,o Xhnng hO trd c;c l3p haG t\nh thCa X2.
JavaScript co th( M;p ^ng c;c 5a Xi<n nh tTi haG lo:i @S c;c Wor*. EhT
npng nG cho phyp JavaScript tr= thnh *+t ngnn ngF 5cript M+ng.
1iDng v3i HTML v JavaY JavaScript Mdc thi2t X2 M+c lep v3i h< MiwA
hnh. No co th( ch:G trHn @Kt Xz h< MiwA hnh no co tr_nh ,AG<t hO
trd JavaScript. Ngoi ra JavaScript giDng Java = Xh\a c:nh an ninh{
JavaScript Xhnng th( MPc v vi2t vo fle cfa ng4i ,qng.
#;c tr_nh ,AG<t Qe@ nh Ne5cape Navigator 2.[ tr= Mi co th( hi(n th)
nhFng c?A l<nh JavaScript Mdc nhng vo trang HTML. Ehi tr_nh
,AG<t GHA cbA *+t trangY 5erver 5| g6i MbG Mf n+i ,Ang cfa trang MoY
@ao gs* cT HTML v c;c c?A l<nh JavaScript vAa *:ng t3i client. #lient
5| MPc trang Mo tC MbA M2n cADiY hi(n th) c;c X2t vAT cfa HTML v
.6 l` c;c c?A l<nh JavaScript Xhi no chng .AKt hi<n.
#;c c?A l<nh JavaScript Mdc nhng trong *+t trang HTML co th( trT l4i
cho c;c 5a Xi<n cfa ng4i 56 ,7ng nh X\ch chA+tY nhep vo *+t Wor* v
MiwA h3ng trang. U\ ,7 @:n co th( Xi(* tra c;c gi; tr) thnng tin * ngl
4i 56 ,7ng Ma vo * Xhnng cbn M2n @Kt c^ *+t vA; tr_nh trAGwn
trHn *:ng no. Trang HTML v3i JavaScript Mdc nhng 5| Xi(* tra c;c gi;
tr) Mdc Ma vo v 5| thnng @;o v3i ng4i 56 ,7ng Xhi gi; tr) Ma vo l
Xhnng hdp l<.
M7c M\ch cfa phbn nG l gi3i thi<A vw ngnn ngF lep tr_nh JavaScript
M( @:n co th( vi2t c;c 5cript vo fle HTML cfa *_nh.
Ehoa Toan tinY 9:i hPc ZADc gia H N+i
JavaScript
5
!h:ng 2 ?h@p A+n JavaScript
2.1.?hBng JavaScript vCo D"/ E9*;
>:n co th( nhng JavaScript vo *+t fle HTML theo *+t trong c;c c;ch
5aA M?G{
S6 ,7ng c;c c?A l<nh v c;c h* trong cVp th <SCRIPT>
S6 ,7ng c;c fle ngAsn JavaScript
S6 ,7ng *+t @i(A th^c JavaScript l* gi; tr) cfa *+t thA+c
t\nh HTML
S6 ,7ng th 5a Xi<n Ievent han,ler5J trong *+t th HTML no
Mo
Trong MoY 56 ,7ng cVp th <SCRIPT!...<"SCRIPT! v nhng *+t fle
ngAsn JavaScript l Mdc 56 ,7ng nhiwA h]n cT.
2.1.1.SF dGng thH S!IJK9
Script Mdc Ma vo fle HTML @}ng c;ch 56 ,7ng
cVp th <SCRIPT! v <~SCRIPT!. #;c th
<S#$%&T! co th( .AKt hi<n trong phbn <H!
haG <>! cfa fle HTML. N2A MVt trong phbn
<H!Y no 5| Mdc tTi v 5n 5ng tr3c Xhi phbn
c-n l:i cfa vpn @Tn Mdc tTi.
ThA+c t\nh ,AG nhKt Mdc M)nh nghga hi<n th4i
cho th <SCRIPT! l LANGUAGE ,qng M(
.;c M)nh ngnn ngF 5cript Mdc 56 ,7ng. #o hai gi;
tr) Mdc M)nh nghga l JavaScript v U>Script. U3i ch]ng tr_nh vi2t
@}ng JavaScript @:n 56 ,7ng c ph;p 5aA {
<S!IJK9 LN1c1JavaScript!
"" %NS$T LL JavaScript H$
<"S!IJK9!
9i(* Xh;c nhaA giFa c ph;p vi2t c;c ghi ch giFa HTML v JavaScript
l cho phyp @:n Ln c;c *j JavaScript trong c;c ghi ch cfa fle HTMLY
M( c;c tr_nh ,AG<t c Xhnng hO trd cho JavaScript co th( MPc Mdc no
nh trong v\ ,7 5aA M?G{
<S!IJK9 LN1c1JavaScript!
<ll Nro* here the JavaScript co,e hi,,en
"" %NS$T LL JavaScript H$
"" Thi5 i5 Qhere the hi,,en en,5 ll!
<"S!IJK9!
Ehoa Toan tinY 9:i hPc ZADc gia H N+i
!hB LM
Ghi chB 5h+ng &(c
&Nt trong cNp thH
OP vC PQ nh ghi chB
trong D"/ E9*;. !B
php cRa
JavaScript t:ng t
cB php cRa ! nSn
c= th TF dGng UU
hay U* ... *U.
JavaScript
'
-ng cADi cqng cfa 5cript cbn co ,KA "" M( tr_nh ,AG<t Xhnng ,iBn
,)ch ,-ng nG ,3i ,:ng *j JavaScript. #;c v\ ,7 trong ch]ng nG Xhnng
ch^a MVc Mi(* Ln cfa JavaScript M( *j co th( ,B hi(A h]n.
2.1.2. SF dGng AVt D"/ nguWn JavaScript
ThA+c t\nh SPC cfa th <SCP)QN! cho phyp @:n chm r fle ngAsn
JavaScript Mdc 56 ,7ng I,qng ph]ng ph;p nG haG h]n nhng trac ti2p
*+t Mo:n l<nh JavaScript vo trang HTMLJ.
# ph;p{
<S!IJK9 S$#flena*e.h5!
....
<"S!IJK9!
ThA+c t\nh nG rKG hFA ,7ng cho vi<c chia 5 c;c h* ,qng chAng cho
nhiwA trang Xh;c nhaA. #;c c?A l<nh JavaScript n}* trong cVp th
<SCP)QN! v <RSCP)QN! co ch^a thA+c tinh SPC trC Xhi no co lOi. U\ ,7
@:n *ADn Ma ,-ng l<nh 5aA vo giFa cVp th SSCP)QN SPCTU...UV v
SRSCP)QNVW
docuA/nt.Xrit/,YZh+ng tA th[y D"/ JS &a vCo\Y0]
ThA+c t\nh SPC co th( Mdc M)nh r @}ng M)a chm XPLY c;c liHn X2t
hoVc c;c M4ng ,tn tAG<t MDiY v\ ,7{
OS!IJK9 SI!^Y httpMUUcT/.coA.vn YQ
#;c fle JavaScript @Hn ngoi Xhnng Mdc
ch^a @Kt Xz th HTML no. #hng chm Mdc
ch^a c;c c?A l<nh JavaScript v M)nh
nghga h*.
THn fle cfa c;c h* JavaScript @Hn ngoi
cbn co MAni .jsY v 5erver 5| phTi ;nh .:
MAni .js Mo t3i Xi(A M%M application".l
hava5cript. 9o l nhFng g_ * 5erver g6i
tr= l:i phbn Hea,er cfa fle HTML. 9( ;nh .: MAni nG vo Xi(A M%MY
ta thH* ,-ng 5aA vo fle *i*e.tGpe5 trong M4ng ,tn cKA h_nh cfa
5erverY 5aA Mo Xh=i M+ng l:i 5erver{
typ/^app"icationU_P.avaTcript
N2A 5erver Xhnng ;nh .: Mdc MAni .Y= t3i Xi(A MIME application/x-
javascript Y Navigator 5| tTi fle JavaScript Mdc chm ra trong thA+c t\nh
SPC vw Xhnng Mng c;ch.
Trong v\ ,7 5aAY h* @ar co ch^a .?A leWt n}* trong *+t cVp ,KA
nh;G Xyp{
`unction @arIQi,th&ctJ
Ehoa Toan tinY 9:i hPc ZADc gia H N+i
Ch
Khi bn mun ch ra
mt xu trch dn
trong mt xu khc c!n
s" d#ng d$u nh% &'n (
) * &+ ,hn &-nh xu
&.. /i0u n1% cho ,h2,
scri,t nh3n ra xu k
JavaScript
/
docuA/nt.Xrit/I <EI L%1NLNT k%THxQi,th&ctx!J
el5e
,ocA*ent.QriteI. Xhnng @}ng 1[.J
Ehoa Toan tinY 9:i hPc ZADc gia H N+i
Ch
jk tD F v% G ;c =/ G[ng + t.ch c.c 6h:i ml.
JavaScript
23
!u "#nh "Np
#?A l<nh lVp th( hi<n vi<c lVp Mi lVp l:i *+t Mo:n *j cho M2n Xhi
@i(A th^c MiwA Xi<n Mdc M;nh gi; l Mng. JavaScipt cAng cKp hai
Xi(A c?A l<nh lVp{
Wor loop
Qhile loop
.1.1. {bng "Np `or
U-ng lVp Wor thi2t lep *+t @i(A th^c Xh=i MbA l initmgprY 5aA Mo lVp
*+t Mo:n *j cho M2n Xhi @i(A th^c Si5u 6i4nV Mdc M;nh gi; l
Mng. SaA Xhi X2t thc *Oi v-ng lVpY @i(A th^c incrmgpr Mdc M;nh gi;
l:i.
!B phpM
`or ,initk_pr] O&ixu 5i#nQ ] incrk_pr0y
UU!c "#nh &(c thc hi#n trong 5hi "Np
z
ZM G[W
<HTML! <H!
<T%TL!Nor loop .a*ple <"T%TL!
<S#$%&T LN1c1 JavaScript!
Wor I.1 .<1[ .xxJ
G.25
,ocA*ent.QriteI. x . xG x G x <>$!J
<"S#$%&T!
<"H!
<>!<">!
<"HTML!
Ehoa Toan tinY 9:i hPc ZADc gia H N+i
JavaScript
20
U\ ,7 nG lA vo fle H"rn'""p.\tm'.
U-ng lVp nG 5| thac hi<n XhDi *j l<nh cho M2n Xhi .!1[.
.1.2. Xhi"/
U-ng lVp Qhile lVp XhDi l<nh chCng no Si5u 6i4nV c-n Mdc M;nh
gi; l Mng
!B phpM
Xhi"/ ,O&ixu 5i#nQ0
y
UU!c cu "#nh thc hi#n trong 5hi "Np
z
ZM G[W
.1
Qhile I.<1[J
G.25
,ocA*ent.QriteI.x. x G x G x <>$!J
.xx
iW I.<5[J @reaX
.xx
.1.%. continu/
L<nh continuC giDng l<nh brCak nhng Xh;c = chO vi<c lVp Mdc X2t
thc v @ut MbA tC MbA v-ng lVp. 9Di v3i v-ng lVp Xhi"/Y l<nh
continuC MiwA Xhi(n vAaG l:i <MiwA Xi<n! v3i `or| l<nh continuC
MiwA Xhi(n vAaG l:i incr.pr.
!B php
continu/]
H d#W
9o:n *j 5aA tpng . tC [ lHn 5Y nhTG lHn R v ti2p t7c tpng lHn 1[
.[
Qhile I.<1[J
.R
continAe
.xx
<"S#$%&T!
<"H!
<>!
<">!
<"HTML!
Ehoa Toan tinY 9:i hPc ZADc gia H N+i
JavaScript
3[
!c hCA ,qunctionT0
JavaScript cg cho phyp 56 ,7ng c;c h*. MVc ,q Xhnng nhKt thi2t
phTi coY 5ong c;c h* co th( co *+t haG nhiwA tha* 5D trAGwn vo v
*+t gi; tr) trT vw. >=i v_ JavaScript l ngnn ngF co t\nh M)nh Xi(A
thKp nHn Xhnng cbn M)nh nghga Xi(A tha* 5D v gi; tr) trT vw cfa
h*. H* co th( l thA+c t\nh cfa *+t MDi tdngY trong tr4ng hdp nG
no Mdc .e* nh l ph]ng th^c cfa MDi tdng Mo.
L<nh Dunction Mdc 56 ,7ng M( t:o ra h* trong JavaScript.
C ,h,
`unction `n?aA/,}paraA1~|}paraA2~|...|}paraA?~0
y
UU`unction Ttat/A/nt
z
H d#I
U\ ,7 5aA *inh ho: c;ch th^c t:o ra v 56 ,7ng h* nh l thnh viHn
cfa *+t MDi tdng. H* printStat= Mdc t:o ra l ph]ng th^c cfa MDi tdng
p1r="n
<HTML! <H!
<T%TL!NAnction .a*ple <"T%TL!
<S#$%&T LN1c1 JavaScript!
WAnction per5onIfr5tna*eY la5tna*eY ageY 5e.J
Ehoa Toan tinY 9:i hPc ZADc gia H N+i
\]nh 5.4W E2t vAT cfa v\ ,7 l<nh Qith
JavaScript
31
thi5.fr5tna*efr5tna*e
thi5.la5tna*ela5tna*e
thi5.ageage
thi5.5e.5e.
thi5.printStat5printStat5
WAnction printStat5IJ
Qith I,ocA*entJ
Qrite I Na*e { x thi5.la5tna*e x x thi5.fr5tna*e x
<>$! J
QriteIge {xthi5.agex<>$!J
QriteISe. {xthi5.5e.x<>$!J
retArn thi5
No t:o ra *+t *Tng v3i X\ch th3c .;c M)nh tr3c v Miwn c;c gi; tr) [.
#h ` r}ng thnh phbn MbA tiHn trong *Tng l M+ ,i *Tng v Xhnng
Mdc 56 ,7ng.
9( t:o ra *+t *TngY Xhai @;o nh 5aA{
*GrraG neQ %nitrraG I1[J
No t:o ra c;c thnh phbn tC *GrraG1 M2n *GrraG1[ v3i gi; tr) l
[. 1i; tr) c;c thnh phbn trong *Tng co th( Mdc thaG Mri nh 5aA{
*GrraG1 Ngh< n
*GrraG2 Lo
SaA M?G l v\ ,7 MbG Mf{
<HTML! <H!
<T%TL! rraG .e*ple <"T%TL!
<S#$%&T LN1c1 JavaScript!
WAnction %nitrraGInA*le*ent5J
thi5.length nA*le*ent5
Wor Ivar .1 .<nA*le*ent5 .xxJ
thi5.[
retArn thi5
<"S#$%&T!
<"H!
<>!
<N$M NM&H%c%cT$!
Nhep vo tHn cfa @:n{<>$!
THn <%N&cT T&TiT NMTN MiLN1TH1[ S%1[!<>$!
9<* <%N&cT T&TiT NMM MiLN1TH15 S%1[!<>$!
HP <%N&cT T&TiT NMH MiLN1TH1[ S%1[!<>$!
ge <%N&cT T&TiT NM1 MiLN1TH3 S%2
on#hange#hecXgeI&H%c%cT$J!<>$!
<&!
>:n th\ch *qa no nhKt{<>$!
Mqa .A?n<%N&cT T&$% NMMc ULcMAa .Aan!
Ehoa Toan tinY 9:i hPc ZADc gia H N+i
JavaScript
0[
Mqa h:<%N&cT T&$% NMMc ULcMAa ha!
Mqa thA<%N&cT T&$% NMMc ULcMAa thA!
Mqa Mnng<%N&cT T&$% NMMc ULcMAa ,ong!
<&!
HjG chPn nhFng ho:t M+ng ngoi tr4i * @:n GHA th\ch{<>$!
9i @+<%N&cT T&#H#E>i NMHTN1 ULci @o!
Trdt tAG2t<%N&cT T&#H#E>i NMHTN1
ULcTrAot tAGet!
Th( thao ,3i n3c<%N&cT T&#H#E>i NMHTN1
ULcAoi nAoc!
9:p .e<%N&cT T&#H#E>i NMHTN1 ULcap
.e!
<&!
<%N&cT T&Sc>M%T!
<%N&cT T&$ST!
<"N$M!
<">!
<"HTML!
Ehoa Toan tinY 9:i hPc ZADc gia H N+i
JavaScript
01
\]nh 5.17W Minh ho: cho v\ ,7 vent Han,ler
2Ci t@p
.1.12. !u hwi
1. Ui2t *+t Mo:n l<nh JavaScript 56 ,7ng c;ch th^c confr*IJ v c?A
l<nh iW...then M( thac hi<n{
HSi ng4i 56 ,7ng co *ADn nhen Mdc *+t l4i cho Xhnng
N2A co th_ hi<n Tnh Qellco*e.hpg v *+t l4i cho.
N2A Xhnng th_ vi2t ra *+t l4i thnng @;o
2. Ui2t *+t Mo:n l<nh JavaScript M( thac hi<n{
HSi ng4i 56 ,7ng{ 1[x1[ @}ng @ao nhiHA
N2A Mng th_ hSi ti2p{ #o *ADn trT l4i c?A th^ hai Xhnng
N2A *ADn th_ hSi{ 1[1[ @}ng @ao nhiHA
9;nh gi; X2t vAT @}ng @i(A th^c logic 5aA Mo vi2t ra *n
h_nh{
9ng{ #$$#T Sai{ %N#$$#T
1di `{ S6 ,7ng @i2n ton c7c lA X2t vAT Mng M( 5o 5;nh v3i X2t
vfa Ma vo.
3. #?A l<nh no trong c;c c?A 5aA M?G 56 ,7ng 5ai th 5a Xi<n
Ehoa Toan tinY 9:i hPc ZADc gia H N+i
JavaScript
02
a. <> on#licX,oSo*ethingIJ!
@. <%N&cT T&te.t onNocA5,oSo*ethingIJ!
c. <%N&cT T&te.tarea onLoa,,oSo*ethingIJ!
,. <> oncnloa,,oSo*ethingIJ!
e. <N$M onLoa,,oSo*ethingIJ!
W. <N$M onSA@*it,oSo*ethingIJ!
0. 9iwA g_ .TG ra Xhi thac hi<n 5cript 5aA{
<HTML!
<H!
<T%TL!.erci5e 5.0<"T%TL!
<S#$%&T LN1c1JavaScript!
<ll H% N$M TH$ >$kS$S
var na*e
WAnction Qelco*eIJ
na*e pro*ptIkelco*e to *G page khat5 oAr
Na*eYna*eJ
WAnction WareQellIJ
alertI1oo,@Ge x na*e x . ThanX5 Wor vi5iting *G page.J
"" ST& H%%N1 N$M TH$ >$kS$S ll!
<"S#$%&T!
<"H!
<> onLoa,Qelco*eIJ oncnloa,WareQellIJ!
Thi5 i5 *G page
<">!
<"HTML!
5. S6 ,7ng v-ng lVp Qhile M( *n phSng c;c v-ng lVp Wor 5aA{
a.
Wor Ih 0 h ! [ h llJ
,ocA*ent.QritelnIh x <>$!J
@.
Wor IX 1 X < 88 X X2J
X X"1.5
c.
Ehoa Toan tinY 9:i hPc ZADc gia H N+i
JavaScript
03
Wor InA* [ nA* < 1[ nA* xxJ
iW InA* RJ
@reaX
.1.1. 9r3 "<i
1. S6 ,7ng c;ch th^c confr*IJ v cKA trc iW...then{
<HTML!
<H!
<T%TL!.eci5e 5.1<"T%TL!
<H!
<>!
<&!
<S#$%&T LN1c1JavaScript!
var conWconfr*I#licX E to 5ee a Qellco*e *e55ageJ
iW IconWJ
,ocA*ent.QriteI<%M1 S$#Qellco*e.hpg!J
,ocA*ent.QriteI<>$!kellco*e GoA co*e to #S5
cla55J
el5e
,ocA*ent.QriteIkhat a pitG oA have hA5t clicX #ancel
@AttonJ
<"S#$%&T!
<"&!
<">!
<"HTML!
2. Thac hi<n hSi ng4i 56 ,7ng{
<HTML!
<H!
<T%TL!.erci5e 3.3<"T%TL!
<S#$%&T LN1c1JavaScript!
<ll H% N$M TH$ >$kS$S
"" N%N U$%>LS N$ $ST N S#$%&T
var vAe5tionkhat i5 1[x1[
var an5Qer2[
var correct#$$#T
var incorrect%N#$$#T
Ehoa Toan tinY 9:i hPc ZADc gia H N+i
JavaScript
00
"" SE TH ZcST%N
var re5pon5e pro*ptIvAe5tionY[J
"" ch#E TH NSk$ TH N%$ST T%M
iW Ire5pon5e an5QerJ
"" TH NSk$ kS k$N1{ NN$ S#N chnc
iW Iconfr*Ikrong &re55 E Wor a 5econ, chance.JJ
re5pon5e pro*ptIvAe5tionY[J
el5e
"" TH NSk$ kS $%1HT{ NN$ S#N ZcST%N
iW Iconfr*I#orrect &re55 E Wor a 5econ, vAe5tion.JJ
vAe5tion khat i5 1[1[
an5Qer 1[[
re5pon5e pro*pt IvAe5tionY[J
"" ch#E TH NSk$
var oAtpAt Ire5pon5e an5QerJ correct { incorrect
"" ST& H%%N1 N$M TH$ >$kS$S ll!
<"S#$%&T!
<"H!
<>!
<S#$%&T LN1c1JavaScript!
<ll H% N$M TH$ >$kS$S
"" cT&cT $ScLT
,ocA*ent.QriteIoAtpAtJ
"" ST& H%%N1 N$M TH$ >$kS$S ll!
<"S#$%&T!
<">!
<"HTML!
3. #;c c?A 5ai{ aY cY e. #;c c?A Mng{ @Y ,Y W
0. Ehi ch]ng tr_nh Mdc ch:G Iloa,JY h* Qellco*e 5| thac hi<n
hSi tHn ng4i 56 ,7ngY lA tHn Mo vo @i2n ton c7c na*e. Ehi ng4i
56 ,7ng 5ang *+t M)a chm c$L Xh;cY h* WareQellIJ 5| thac hi<n
g6i *+t l4i cT* ]n t3i ng4i 56 ,7ng.
5. S6 ,7ng v-ng lVp Qhile nh 5aA{
a.
h 5
Qhile Illh ! [J
Ehoa Toan tinY 9:i hPc ZADc gia H N+i
JavaScript
05
,ocA*ent.QritelnIh x <>$!J
@.
X 1
Qhile IX < 88J
X X 2 " 1.5
c.
nA* [
Qhile InA* < 1[J
iW InA*xx RJ
@reaX
Ehoa Toan tinY 9:i hPc ZADc gia H N+i
JavaScript
0'
%. !c &'i t(ng trong JavaScript
Nh Mj noi JavaScript l ngnn ngF lep tr_nh dOa trSn &i tTngY nhng
Xhnng h5ng &i tTng @=i v_ no Xhnng hO trd c;c l3p cng nh t\nh thCa
X2. &hbn nG noi vw c;c MDi tdng trong JavaScript v h_nh '.1 chm ra
5] Ms ph?n cKp c;c MDi tdng.
Trong 5] Ms ph?n cKp c;c MDi tdng cfa JavaScriptY c;c MDi tdng con
thac 5a l c;c thA+c t\nh cfa c;c MDi tdng @D *. Trong v\ ,7 vw chl
]ng tr_nh .6 l` 5a Xi<n tr3c M?G Wor* tHn &H%c%cT$l thA+c
t\nh cfa MDi tdng G"cum1nt v tr4ng t1gt Bpm l thA+c t\nh cfa Wor*
&H%c%cT$. 9( tha* chi2A M2n gi; tr) cfa 1Y @:n phTi 56
,7ng{
,ocA*ent.&H%c%cT$.1.valAe
#;c MDi tdng co thA+c t\nh Ipropertie5JY ph]ng th^c I*etho,5JY v c;c
ch]ng tr_nh .6 l` 5a Xi<n Ievent han,ler5J gun v3i chng. U\ ,7 MDi tl
dng G"cum1nt co thA+c t\nh title phTn ;nh n+i ,Ang cfa th SN)NLmV
cfa G"cum1nt. >Hn c:nh Mo @:n thKG ph]ng th^c G"cum1nt.Frit1 Mdc
56 ,7ng trong nhiwA v\ ,7 M( Ma vpn @Tn X2t vAT ra G"cum1nt.
9Di tdng cng co th( co c;c ch]ng tr_nh .6 l` 5a Xi<n. U\ ,7 MDi tdng
'in6 co hai ch]ng tr_nh .6 l` 5a Xi<n l "nC'ic6 v "n@"u=1qv1r.
"nC'ic6 Mdc gPi Xhi co MDi tdng linX Mdc X\chY "n@"u=1qv1r Mdc gPi Xhi
con trS chA+t ,i chAG(n vAa linX.
Ehi @:n tTi *+t ,ocA*ent .ADng NavigatorY no 5| t:o ra *+t 5D MDi tdng
cqng v3i nhFng gi; tr) c;c thA+c t\nh cfa chng ,aa trHn fle HTML cfa
,ocA*ent Mo v *+t vi thnng tin cbn thi2t Xh;c. NhFng MDi tdng nG
tsn t:i *+t c;ch co cKp @ec v phTn ;nh ch\nh cKA trc cfa fle HTML
Mo.
Ehoa Toan tinY 9:i hPc ZADc gia H N+i
JavaScript
0/
S] Ms 5aA 5| *inh ho: 5a ph?n cKp cfa c;c MDi tdng nG
Trong 5] Ms ph?n cKp nGY c;c MDi tdng con ch\nh l c;c thA+c t\nh
cfa *+t MDi tdng cha. U\ ,7 nh *+t Wor* tHn l Wor*1 ch\nh l *+t MDi
tdng con cfa MDi tdng ,ocA*ent v Mdc gPi t3i l ,ocA*ent.Wor*1
TKt cT c;c trang MwA co c;c MDi tdng 5aA M?G{
navigator{ co c;c thA+c t\nh tHn v phiHn @Tn cfa Navigator
Mang Mdc 56 ,7ngY ,qng cho @)@m tCp1 Mdc hO trd @=i client
v plAglin Mdc ci MVt trHn client.
Qin,oQ{ l MDi tdng = *^c cao nhKtY co c;c thA+c t\nh thac
hi<n ;p ,7ng vo ton @+ c6a 5r.
,ocA*ent{ ch^a c;c thA+c t\nh ,aa trHn n+i ,Ang cfa
,ocA*ent nh tHnY *A nwnY c;c X2t nDi v c;c Wor*5.
location{ co c;c thA+c t\nh ,aa trHn M)a chm c$L hi<n th4i
Ehoa Toan tinY 9:i hPc ZADc gia H N+i
kin,oQ Te.tArea
Te.t
Nilecploa,
&a55Qor,
Hi,,en
SA@*it
$e5et
$a,io
#hecX@o.
>Atton
Select
&lAgin
Mi*e TGpe
Nra*e
,ocA*ent
Location
Hi5torG
LaGer
LinX
%*age
rea
nchor
pplet
&lAgin
Nor*
navigator
ption
\]nh -.1W S] Ms 1 l &h?n cKp MDi t dng
Navigator
JavaScript
0R
hi5torG{ #h^a c;c thA+c t\nh vw c;c c$L * client GHA cbA
tr3c Mo.
SaA M?G 5| *n tT c;c thA+c t\nhY ph]ng th^c cng nh c;c ch]ng
tr_nh .6 l` 5a Xi<n cho tCng MDi tdng trong JavaScript.
f'i t(ng navigator
9Di tdng nG Mdc 56 ,7ng M( M:t Mdc c;c thnng tin vw tr_nh ,AG<t nh
5D phiHn @Tn. 9Di tdng nG Xhnng co ph]ng th^c haG ch]ng tr_nh .6 l`
5a Xi<n.
Cc thuc tnh
appC"G1Nam1 i;c M)nh tHn *j n+i t:i cfa tr_nh ,AG<t
Itla5J.
BppNam1 i;c M)nh tHn tr_nh ,AG<t.
BppZ1r=i"n i;c M)nh thnng tin vw phiHn @Tn cfa MDi tl
dng navigator.
u=1rBg1nt
i;c M)nh hea,er cfa A5er l agent.
H d#
U\ ,7 5aA 5| hi(n th) c;c thA+c t\nh cfa MDi tdng navigator
<HTML!
<H!
<T%TL! Navigator @hect .e*ple <"T%TL!
<S#$%&T LN1c1 JavaScript!
,ocA*ent.QriteIapp#o,eNa*e xnavigator.app#o,eNa*e x
<>$!J
,ocA*ent.QriteIappNa*e xnavigator.appNa*e x <>$!J
,ocA*ent.QriteIappUer5ion xnavigator.appUer5ion x <>$!J
,ocA*ent.QriteIA5ergent xnavigator.A5ergent x <>$!J
<"S#$%&T!
<"H!
<>!
<">!
<"HTML!
Ehoa Toan tinY 9:i hPc ZADc gia H N+i
JavaScript
08
f'i t(ng XindoX
9Di tdng Qin,oQ nh Mj noi = trHn l MDi tdng = *^c cao nhKt. #;c MDi tl
dng ,ocA*entY Wra*eY v) tr\ MwA l thA+c t\nh cfa MDi tdng Qin,oQ.
%.1.1. !c thuVc tnh
,eWaAltStatA5 l Thnng @;o ngb* M)nh hi(n th) lHn trHn thanh
tr:ng th;i cfa c6a 5r
Nra*e5 l MTng .;c M)nh tKt cT c;c Wra*e trong c6a 5r.
Length l SD ldng c;c Wra*e trong c6a 5r cha *.
Na*e l THn cfa c6a 5r hi<n th4i.
&arent l 9Di tdng c6a 5r cha *
SelW l #6a 5r hi<n th4i.
StatA5 l 9dc 56 ,7ng cho thnng @;o t:* th4i hi(n th) lHn trHn
thanh th:ng th;i c6a 5r. 9a]c 56 ,7ng M( lKG haG MVt l:i
thnng @;o tr:ng th;i v ghi M lHn ,eWaAltStatA5.
Top l #6a 5r = trHn cqng.
kin,oQ l #6a 5r hi<n th4i.
Ehoa Toan tinY 9:i hPc ZADc gia H N+i
\]nh -.2W Minh ho: cho MDi tdng Navigator
JavaScript
5[
%.1.2. !c ph:ng thc
alert I*e55ageJ lHi(n th) h+p h+i tho:i v3i chAOi *e55age
v nt E.
clearTi*eoAtIti*eoAt%J lioa ti*eoAt ,o SetTi*eoAt MVt.
SetTi*eoAt trT l:i ti*eoAt%
Qin,oQ$eWerence.clo5e l9ong c6a 5r Qin,oQ$eWerence.
confr*I*e55ageJ lHi(n th) h+p h+i tho:i v3i chAOi
*e55ageY nt E v nt #ancel. TrT l:i gi; tr) TrAe cho E v
Nal5e cho #ancel.
Qin,oQUar Qin,oQ. openIc$LY Qin,oQNa*eY
Qin,oQNeatAre5 J l M= c6a 5r *3i.
pro*pt I*e55age Y,eWaAlt%npAtJ l M= *+t h+p h+i tho:i
M( nhen ,F li<A vo tr4ng te.t.
Ti*eoAt% 5etTi*eoAtIe.pre55ionY*5ecJ l 9;nh gi; @i(A th^c
e.pre5ion 5aA th4i gian *5ec.
{ dG{ S6 ,7ng tHn c6a 5r Xhi gPi t3i no nh l M\ch cfa *+t Wor*
5A@*it hoVc trong *+t Hiperte.t linX IthA+c t\nh T$1T cfa th
N$M v J.
Trong v\ ,7 t:o ra *+t t3i c6a 5r th^ haiY nh nt th^ nhKt M( *= *+t
c6a 5r rOngY 5aA Mo *+t liHn X2t 5| tTi fle ,oc2.ht*l .ADng c6a 5r *3i
Mo rsi *+t nt Xh;c ,qng M( Mong cfa 5r th^ hai l:iY v\ ,7 nG la vo
fle FinG"F.htm'{
<HTML!
<H!
<T%TL!Nra*e .a*ple <"T%TL!
<"H!
<>!
<N$M!
<%N&cT T&@Atton ULcpen Secon, kin,oQ
on#licX*5gkin,oQQin,oQ.openIYQin,oQ2Yre5ia@lenoYQ
i,th2[[Yheight2[[J!
<&!
< H$N,oc2.ht*l T$1TQin,oQ2!
Loa, a fle into Qin,oQ2 <"!
<"&!
<%N&cT T&@Atton ULc#lo5e Secon, kin,oQ
on#licX*5gkin,oQ.clo5eIJ!
<"N$M!
<">!
<"HTML!
Ehoa Toan tinY 9:i hPc ZADc gia H N+i
JavaScript
51
\]nh -.3W Minh ho: cho MDi tdng c6a 5r
%.1.. !c ch:ng trnh _F "L T 5i#n
onLoa, l iAKt hi<n Xhi c6a 5r X2t thc vi<c tTi.
oncnLoa, l iAKt hi<n Xhi c6a 5r Mdc lo:i @S.
f'i t(ng "ocation
#;c thA+c t\nh cfa MDi tdng location ,AG tr_ c;c thnng tin vw c$L cfa
,ocA*ent hi<n th4i. 9Di tdng nG hon ton Xhnng co c;c ph]ng th^c
v ch]ng tr_nh .6 l` 5a Xi<n Mi X*. ZM G[{
http{"" QQQ.a@c.co*" chap1"page2.ht*ltopic3
Cc thuc tnh
ha5h l THn anchor cfa v) tr\ hi<n th4i Iv\ ,7 topic3J.
Ho5t l &hbn ho5tna*e{port cfa c$L Iv\ ,7 QQQ.a@c.co* J.
#h ` r}ng M?G th4ng l crng ngb* M)nh v \t Xhi Mdc chm
ra.
Ho5tna*e l THn cfa ho5t v ,o*ain Iv\ ,7 QQQ.a@c.co* J.
hreW l Ton @+ c$L cho ,ocA*ent hi<n t:i.
&athna*e l &hbn M4ng ,tn cfa c$L Iv\ ,7
"chap1"page2.ht*lJ.
Ehoa Toan tinY 9:i hPc ZADc gia H N+i
JavaScript
52
&ort l #rng trAGwn thnng Mdc 56 ,7ng cho *;G t\nh ho5tY thl
4ng l crng ngb* M)nh.
&rotocol l 1iao th^c Mdc 56 ,7ng Icqng v3i ,KA hai chK*J Iv\ ,7
http{J.
Search l #?A trAG vKn t_* Xi2* co th( = cADi c$L cho c;c
5cript #1%.
f'i t(ng `raA/
M+t c6a 5D co th( co *+t vi Wra*e. #;c Wra*e co th( cA+n *+t
c;ch M+c lep v3i nhaA v *Oi Wra*e co c$L riHng. Wra*e Xhnng co c;c
ch]ng tr_nh .6 l` 5a Xi<n. Sa Xi<n onLoa, v oncnLoa, l cfa MDi tl
dng Qin,oQ.
%.1.%. !c thuVc tnh
Wra*e5 l MTng tKt cT c;c Wra*e trong c6a 5r.
Na*e l ThA+c t\nh NM cfa th <N$M!
Length l SD ldng c;c Wra*e con trong *+t Wra*e.
&arent l #6a 5r haG Wra*e ch^a nho* Wra*e hi<n th4i.
5elW l Wra*e hi<n th4i.
kin,oQ l Wra*e hi<n th4i.
%.1.). !c ph:ng thc
clearTi*eoAt Iti*eoAt%J l io; ti*eoAt ,o 5etTi*eoAt lep.
SetTi*eoAt trT l:i ti*eoAt%.
Ti*eoAt% 5etTi*eoAt Ie.pre55ionY*5ecJ l 9;nh gi;
e.pre55ion 5aA Xhi h2t th4i gian *5ec.
%.1.6. SF dGng qraA/
%.1.6.1. a0 9go AVt `raA/ ,cr/at/0
9( t:o *+t Wra*eY ta 56 ,7ng th qIi*kSk9. M7c M\ch cfa th nG l
M)nh nghga *+t tep c;c Wra*e trong *+t trang.
H d#KW t:o Wra*e I h_nh 1/J
<HTML!
<H!
<T%TL!Nra*e .a*ple <"T%TL!
<N$MST $kS8[Y1[!
<N$MST #LS3[Y/[!
<N$M S$##T1$.HTM NMLi5tNra*e!
<N$M S$#T%TLS.HTM NMcontentNra*e!
<"N$MST !
<N$M S$#NU%1T$.HTM NMnavigateNra*e!
Ehoa Toan tinY 9:i hPc ZADc gia H N+i
JavaScript
53
<"N$MST !
<"H!
<>! <">!
<"HTML!
S] Ms 5aA hi(n th) cKA trc cfa c;c Wra*e{ #T 3 Wra*e MwA trHn cqng
*+t c6a 5r chaY *Vc ,q 2 trong 5D c;c Wra*e Mo n}* trong *+t
Wra*e5et Xh;c.
>:n co th( gPi t3i nhFng Wra*e tr3c Mo @}ng c;ch 56 ,7ng thA+c t\nh
`raA/T nh 5aA{
li5tNra*e ch\nh l top.Wra*e5[
contentNra*e ch\nh l top.Wra*e51
navigatorNra*e ch\nh l top.Wra*e52
\]nh -.4W E2t vAT vi<c t:o Wra*e trong
Ehoa Toan tinY 9:i hPc ZADc gia H N+i
Top
li5tNra*e
IcategorG.ht*lJ
contentNra*e
Ititle5.ht*lJ
navigatorNra*e
Inavigator.ht*lJ
JavaScript
50
H d# UM #ng giDng nh *+t 5a laa chPnY @:n co th( t:o ra *+t c6a 5r
giDng nh v\ ,7 tr3c nhng trong *Oi Mmnh cfa hai Wra*e l:i co *+t c6a
5r cha riHng tC navigat/qraA/. M^c Wra*e5et cao nhKt co th( Mdc
M)nh nghga nh 5aA{
<HTML!
<H!
<T%TL!Nra*e .a*ple <"T%TL!
<N$MST $kS8[Y1[!
<N$M S$#*A5Xe13.HTML NMApperNra*e!
<N$M S$#NU%1T$.HTM NMnavigateNra*e!
<"N$MST !
<"H!
<>!
<">!
<"HTML!
Trong fle *A5Xe13.ht*l l:i ti2p t7c MVt *+t Wra*e5et{
<HTML!
<H!
<T%TL!Nra*e .a*ple <"T%TL!
<N$MST #LS3[Y/[!
<N$M S$##T1$.HTM NMLi5tNra*e!
<N$M S$#T%TLS.HTM NMcontentNra*e!
<"N$MST !
<"H!
<>!
<">!
<"HTML!
Ehi Mo X2t vAT hi(n th) cfa v\ ,7 2 giDng v\ ,7 1 nhng 5a ph?n cKp
cfa c;c Wra*e5 l:i Xh;c hn{
>:n co th( gPi t3i c;c Wra*e trHn @}ng c;ch 56 ,7ng thA+c t\nh *Tng
`raA/T nh 5aA{
upp/rqraA/ ch\nh l top.`raA/T}$~
navigatorqraA/ ch\nh l top.`raA/T}1~
"iTtqraA/ ch\nh l upp/rqraA/.`raA/T}$~
Ehoa Toan tinY 9:i hPc ZADc gia H N+i
top
ApperNra*e
I*A5Xe13.ht*lJ
navigatorNra*e
Inavigator.ht*lJ
li5tNra*e IcategorG.ht*lJ
contentNra*e Ititle5.ht*lJ
JavaScript
55
hoVc top.`raA/T}$~.`raA/T}$~
cont/ntqraA/ ch\nh l upp/rqraA/.`raA/T}1~
hoVc top.`raA/T}$~.`raA/T}1~
%.1.6.2. b0 !@p nh@t AVt `raA/ ,updat/0
>:n co th( cep nhet n+i ,Ang cfa *+t Wra*e @}ng c;ch 56 ,7ng thA+c
t\nh "ocation M( MVt M)a chm c$L v phTi M)nh chm r v) tr\ cfa
Wra*e trong cKA trc.
Trong v\ ,7 trHnY n2A @:n thH* *+t ,-ng 5aA vo navigatorqraA/{
<%N&cT T&@Atton ULcTitle5 onlG
on#licXtop.Wra*e5[.locationarti5t.ht*l!
th_ Xhi nt 9it"/T on"y Mdc nhKnY fle artiTt.htA" 5| Mdc tTi vo
upp/rqraA/Y v hai Wra*e "iTtqraA/| cont/ntqraA/ 5| @) Mong l:i
nh chng cha @ao gi4 tsn t:i.
f'i t(ng docuA/nt
9Di tdng nG ch^a c;c thnng tin vw ,ocA*ent hi<n th4i v cAng cKp c;c
ph]ng th^c M( Ma thnng tin ra *n h_nh. 9Di tdng ,ocA*ent Mdc t:o
ra @}ng cVp th <>! v <">!. M+t 5D c;c thA+c t\nh gun v3i
th <>!.
#;c MDi tdng anchorY Wor*5Y hi5torGY linX5 l thA+c t\nh cfa MDi tdng
,ocA*ent. Ehnng co c;c ch]ng tr_nh .6 l` 5a Xi<n cho c;c Wra*e. Sa
Xi<n onLoa, v oncnLoa, l cho MDi tdng Qin,oQ.
%.1.1. !c thuVc tnh
alinX#olor l 1iDng nh thA+c t\nh L%NE.
anchor l MTng tKt cT c;c anchor trong ,ocA*ent.
@g#olor l 1iDng thA+c t\nh >1#L$.
cooXie l S6 ,7ng M( .;c M)nh cooXie.
Wg#olor l 1iDng thA+c t\nh TiT.
Wor*5 l MTng tKt cT c;c Wor* trong ,ocA*ent.
la5tMo,ife, l NgG cADi cqng vpn @Tn Mdc 56a.
linX#olor l 1iDng thA+c t\nh L%NE.
linX5 l MTng tKt cT c;c linX trong ,ocA*ent.
location l c$L MbG Mf cfa vpn @Tn.
reWerrer l c$L cfa vpn @Tn gPi no.
title l N+i ,Ang cfa th <T%TL!.
vlinX#olor l 1iDng thA+c t\nh UL%NE.
Ehoa Toan tinY 9:i hPc ZADc gia H N+i
JavaScript
5'
%.1.8. !c ph:ng thc
,ocA*ent.clear l io; ,ocA*ent hi<n th4i.
,ocA*ent.clo5e l 9ong ,-ng ,F li<A vo v Ma ton @+ ,F
li<A trong @+ M<* ra *n h_nh.
,ocA*ent.open I*ineTGpeJ l M= *+t 5trea* M( thA thep
,F li<A vo cfa c;c phQong th^c Qrite v Qriteln.
,ocA*ent.QriteIe.pre55ion1 Ye.pre55ion2...Ye.pre55ionNJ l
Ui2t @i(A th^c HTML lHn vpn @Tn trnng *+t c6a 5r .;c M)nh.
,ocA*ent.Qriteln Ie.pre55ion1 Ye.pre55ion2 ...
Ye.pre55ionN J l 1iDng ph]ng th^c trHn nhng Xhi h2t *Oi
@i(A th^c l:i .ADng ,-ng.
f'i t(ng anchorT
anchor l *+t Mo:n vpn @Tn trong ,ocA*ent co th( ,qng l* M\ch cho
*+t 5iHA liHn X2t. No Mdc .;c M)nh @}ng cVp th <! v <"!. 9Di tdng
anchor Xhnng co thA+c t\nhY ph]ng th^c cng nh ch]ng tr_nh .6 l` 5a
Xi<n. MTng anchor tha* chi2A M2n *Oi anchor co tHn trong ,ocA*ent.
MOi anchor Mdc tha* chi2A @}ng c;ch{
,ocA*ent.anchor5 in,e.
MTng anchor co *+t thA+c t\nh ,AG nhKt l length .;c M)nh 5D l dng
c;c anchor trong ,ocA*entY no co th( Mdc .;c M)nh nh 5aA{
,ocA*ent.anchor5.length.
f'i t(ng `orAT
#;c Wor* Mdc t:o ra nh4 cVp th <N$M! v <"N$M!. &hbn l3n
c;c thA+c t\nh cfa MDi tdng Wor* phTn ;nh c;c thA+c t\nh cfa th
<N$M!. #o *+t vi phbn t6 Iele*ent5J l thA+c t\nh cfa MDi tdng
Wor*5{
@Atton
checX@o.
hi,,en
pa55Qor,
ra,io
re5et
5elect
5A@*it
te.t
te.tarea
#;c phbn t6 nG 5| Mdc tr_nh @G 5aA.
Ehoa Toan tinY 9:i hPc ZADc gia H N+i
JavaScript
5/
N2A ,ocA*ent ch^a *+t vi Wor*Y chng co th( Mdc tha* chi2A vAa
*Tng Wor*5. SD ldng c;c Wor* co th( Mdc .;c M)nh nh 5aA{
,ocA*ent.Wor*5.length.
MOi *+t Wor* co th( Mdc tha* chi2A nh 5aA{
,ocA*ent.Wor*5in,e.
%.1.. !c thuVc tnh
action thA+c t\nh #T%N cfa th N$M.
ele*ent5 MTng ch^a tKt cT c;c thnh phbn trong *+t Wor* Inh
checX@o.Y tr4ng te.tY ,anh 5;ch laa chPn
enco,ing i?A ch^a Xi(A M%M Mdc 56 ,7ng M( *j ho; n+i
,Ang cfa Wor* g6i cho 5erver.
length SD ldng c;c thnh phbn trong *+t Wor*.
*etho, ThA+c t\nh MTH.
target i?A ch^a tHn cfa c6a 5r M\ch Xhi 5A@*it Wor*
%.1.1$. !c ph:ng thc
Wor*Na*e.5A@*it IJ l iAKt ,F li<A cfa *+t Wor* tHn Wor*Na*e t3i
trang .6 l`. &h]ng th^c nG *n phSng *+t clicX vo nt 5A@*it trHn
Wor*.
%.1.11. !c ch:ng trnh _F "L T 5i#n
onSA@*it l #h]ng tr_nh .6 l` 5a Xi<n nG Mdc gPi Xhi ng4i 56 ,7ng
chAG(n ,F li<A tC Wor* Mi.
f'i t(ng hiTtory
9Di tdng nG Mdc 56 ,7ng M( lA giF c;c thnng tin vw c;c c$L tr3c
Mdc ng4i 56 ,7ng 56 ,7ng. anh 5;ch c;c c$L Mdc lA trF theo th^ ta
th4i gian. 9Di tdng nG Xhnng co ch]ng tr_nh .6 l` 5a Xi<n.
%.1.12. !c thuVc tnh
length l SD ldng c;c c$L trong MDi tdng.
%.1.1. !c ph:ng thc
hi5torG.@acXIJ l 9dc 56 ,7ng M( tha* chi2A t3i c$L *3i Mdc
thp* tr3c M?G.
hi5torG.WorQar,IJ l 9dc 56 ,7ng M( tha* chi2A t3i c$L X2 ti2p
trong ,anh 5;ch. No 5| Xhnng g?G hi<A ^ng g_ n2A Mj M2n
cADi cfa ,anh 5;ch.
hi5torG.go I,elta locationJ l 9dc 56 ,7ng M( chAG(n lHn haG
chAG(n .ADng ,elta @ec haG ,i chA(n M2n c$L .;c M)nh @=i
Ehoa Toan tinY 9:i hPc ZADc gia H N+i
JavaScript
5R
location trong ,anh 5;ch. N2A ,elta Mdc 56 ,7ng th_ vi<c
,)ch chAG(n lHn ph\a trHn Xhi ,elta ,]ng v .ADng ph\a ,3i
Xhi ,elta ?*. n2A 56 ,7ng locationY c$L gbn nhKt co ch^a
location l chAOi con 5| Mdc tha* chi2A.
f'i t(ng "in5T
9Di tdng linX l *+t Mo:n vpn @Tn haG *+t Tnh Mdc .e* l *+t
5iHA liHn X2t. #;c thA+c t\nh cfa MDi tdng linX chf G2A .6 l` vw c$L
cfa c;c 5iHA liHn X2t. 9Di tdng linX cng Xhnng co ph]ng th^c no.
MTng linX ch^a ,anh 5;ch tKt cT c;c liHn X2t trong ,ocA*ent. #o th(
.;c M)nh 5D ldng c;c linX vAa
,ocA*ent.linX5.lengthIJ
#o th( tha* chi2A t3i *+t liHn X2t vfa
,ocA*ent.linX5 in,e.
9( .;c M)nh c;c thA+c t\nh cfa MDi tdng linXY co th( 56 ,7ng c$L t]ng
ta{
http{""QQQ.a@c.co*"chap1"page2.ht*ltopic3
%.1.1%. !c thuVc tnh
ha5h l THn anchor cfa v) tr\ hi<n th4i Iv\ ,7 topic3J.
Ho5t l &hbn ho5tna*e{port cfa c$L Iv\ ,7 QQQ.a@c.co*J. #h
` r}ng M?G th4ng l crng ngb* M)nh v \t Xhi Mdc chm ra.
Ho5tna*e l THn cfa ho5t v ,o*ain Iv\ ,7 QQ.a@c.co*J.
hreW l Ton @+ c$L cho ,ocA*ent hi<n t:i.
&athna*e l &hbn M4ng ,tn cfa c$L Iv\ ,7
"chap1"page2.ht*lJ.
port l #rng trAGwn thnng Mdc 56 ,7ng cho *;G t\nh ho5tY thl
4ng l crng ngb* M)nh.
&rotocol l 1iao th^c Mdc 56 ,7ng Icqng v3i ,KA hai chK*J Iv\ ,7
http{J.
Search l #?A trAG vKn t_* Xi2* co th( = cADi c$L cho c;c
5cript #1%.
Target l 1iDng thA+c t\nh T$1T cfa <L%NE!.
%.1.1). !c ch:ng trnh _F "L T 5i#n
on#licX l iTG ra Xhi ng4i 56 ,7ng nhKn vo linX.
onMoA5ever l iTG ra Xhi con chA+t ,i chAG(n vAa linX.
Ehoa Toan tinY 9:i hPc ZADc gia H N+i
JavaScript
58
f'i t(ng *ath
9Di tdng Math l MDi tdng n+i t:i trong JavaScript. #;c thA+c t\nh cfa MDi
tdng nG ch^a nhiwA h}ng 5D to;n hPcY c;c h* to;n hPcY ldng gi;c phr
@i2n. 9Di tdng Math Xhnng co ch]ng tr_nh .6 l` 5a Xi<n.
Ui<c tha* chi2A t3i numbCr trong c;c ph]ng th^c co th( l 5D haG c;c
@i(A th^c Mdc Mn;h gi; l 5D hdp l<.
%.1.16. !c thuVc tnh
l H}ng 5D AlerY XhoTng 2Y/1R.
LN2 l logarit ta nhiHn cfa 2Y XhoTng [Y'83.
LN1[ l logarit ta nhiHn cfa 1[Y XhoTng 2Y3[2.
L12 l logarit c] 5D 2 cfa eY XhoTng 1Y002.
&% l 1i; tr) cfa Y XhoTng 3Y10158.
SZ$T12 l #pn @ec 2 cfa [Y5Y XhoTng [Y/[/.
SZ$T2 l #pn @ec 2 cfa 2Y XhoTng 1Y010.
%.1.11. !c ph:ng thc
Math.a@5 Inum*1rJ l TrT l:i gi; tr) tAG<t MDi cfa num*1r.
Math.aco5 Inum*1rJ l TrT l:i gi; tr) arc co5ine Itheo ra,ianJ
cfa num*1r. 1i; tr) cfa num*1r phTi np*g giFa l1 v 1.
Math.a5in Inum*1rJ l TrT l:i gi; tr) arc 5ine Itheo ra,ianJ cfa
num*1r. 1i; tr) cfa num*1r phTi np*g giFa l1 v 1.
Math.atan Inum*1rJ l TrT l:i gi; tr) arc tan Itheo ra,ianJ cfa
num*1r.
Math.ceil Inum*1rJ l TrT l:i 5D ngAGHn nhS nhKt l3n h]n hoVc
@}ng num*1r.
Math.co5 Inum*1rJ l TrT l:i gi; tr) co5ine cfa num*1r.
Math.e.p Inum*1rJ l TrT l:i gi; tr) e num*1rY v3i e l h}ng 5D
Aler.
Math.oor Inum*1rJ l TrT l:i 5D ngAGHn l3n nhKt nhS h]n hoVc
@}ng num*1r.
Math.log Inum*1rJ l TrT l:i logarit ta nhiHn cfa num*1r.
Math.*a. Inum1^num2J l TrT l:i gi; tr) l3n nhKt giFa nA*1 v
nA*2
Math.*in Inum1^num2J l TrT l:i gi; tr) nhS nhKt giFa nA*1 v
nA*2.
Ehoa Toan tinY 9:i hPc ZADc gia H N+i
JavaScript
'[
Math.po5 I*a=1^1gp"n1ntJ l TrT l:i gi; tr) @a5e lA thCa
e.ponent.
Math.ran,o* IrJ l TrT l:i *+t 5D ngtA nhiHn giFa [ v 1.
&hQong th^c nG chm thac hi<n Mdc trHn nwn tTng cN%i.
Math.roAn, Inum*1rJ l TrT l:i gi; tr) cfa num*1r l* tr-n t3i 5D
ngAGHn gbn nhKt.
Math.5in Inum*1rJ l TrT l:i 5in cfa num*1r.
Math.5vrt Inum*1rJ l TrT l:i cpn @ec 2 cfa num*1r.
Math.tan Inum*1rJ l TrT l:i tag cfa num*1r.
f'i t(ng at/
9Di tdng ate l MDi tdng co 5n trong JavaScript. No cAng cKp
nhiwA ph]ng th^c co \ch M( .6 l` vw th4i gian v ngG th;ng. 9Di tdng
ate Xhnng co thA+c t\nh v ch]ng tr_nh .6 l` 5a Xi<n.
&hbn l3n c;c ph]ng th^c ,ate MwA co *+t MDi tdng ate Mi cqng. #;c
ph]ng th^c gi3i thi<A trong phbn nG 56 ,7ng MDi tdng ate ,ateUarY
v\ ,7{
,ateUar neQ ate IAgA5t 1'Y 188' 2[{05{[0J
%.1.18. !c ph:ng thc
Gat1Zar.getateIJ l TrT l:i ngG trong th;ng I1l31J cho
Gat1Zar.
Gat1Zar.getaGIJ l TrT l:i ngG trong tAbn I[chf
nhetY...'th^ @TGJ cho Gat1Zar.
Gat1Zar.getHoAr5IJ l TrT l:i gi4 I[l23J cho Gat1Zar.
Gat1Zar.getMinAte5IJ l TrT l:i pht I[l58J cho Gat1Zar.
Gat1Zar.getSecon,5IJ l TrT l:i gi?G I[l58J cho Gat1Zar.
Gat1Zar.getTi*eIJ l TrT l:i 5D ldng c;c *ili gi?G tC [[{[[{[[
ngG 1"1"18/[.
Gat1Zar.getTi*eone5etIJ l TrT l:i M+ ,)ch chAG(n@}ng
pht cfa gi4 M)a ph]ng hi<n t:i 5o v3i gi4 vADc t2 1MT.
Gat1Zar.getearIJlTrT l:i np* cho ,ateUar.
ate.par5e IGat1StrJ l &h?n t\ch chAOi Gat1Str v trT l:i 5D ll
dng c;c *ili gi?G t\nh tC [[{[[{[[ ngG [1"[1"18/[.
Gat1Zar.TetaGIGaCJ l 9Vt ngG trong th;ng l GaC cho
Gat1Zar.
Gat1Zar.TetHoAr5Ih"ur=J l 9Vt gi4 l h"ur= cho Gat1Zar.
Ehoa Toan tinY 9:i hPc ZADc gia H N+i
JavaScript
'1
Gat1Zar.TetMinAte5Iminut1=J l 9Vt pht l minut1= cho
Gat1Zar.
Gat1Zar.TetMonth5Im"nth=J l 9Vt th;ng l m"nth= cho
Gat1Zar.
Gat1Zar.TetSecon,5I=1c"nG=J l 9Vt gi?G l 51c"nG= cho
Gat1Zar.
Gat1Zar.TetTi*eIva'u1J l 9Vt th4i gian l valAeY trong Mo
valAe @i(A ,iBn 5D ldng *ili gi?G tC [[{[[{[[ ngG
[1"[1"1[8/[.
Gat1Zar.TetearIC1ar=J l 9Vt np* l C1ar= cho Gat1Zar.
Gat1Zar.to1MTStringIJ l TrT l:i chAOi @i(A ,iBn ,ateUar ,3i ,:ng
1MT.
Gat1Zar.toLocaleStringIJlTrT l:i chAOi @i(A ,iBn ,ateUar theo
XhA vac th4i gian hi<n th4i.
ate.cT# IGearY *onthY ,aG YhoAr5 Y*inAte5 Y5econ,5J l
TrT l:i 5D ldng *ili gi?G tC [[{[[{[[ [1"[1"18/[ 1MT.
f'i t(ng String
9Di tdng String l MDi tdng Mdc .?G ,ang n+i t:i trong JavaScript cAng
cKp nhiwA ph]ng th^c thao t;c trHn chAOi. 9Di tdng nG co thA+c t\nh
,AG nhKt l M+ ,i IlengthJ v Xhnng co ch]ng tr_nh .6 l` 5a Xi<n.
%.1.1. !c ph:ng thc
5tr.anchor Ina*eJ l 9dc 56 ,7ng M( t:o ra th <! I*+t c;ch
M+ngJ. Tha* 5D na*e l thA+c t\nh NM cfa th <!.
5tr.@igIJ l E2t vAT giDng nh th <>%1! trHn chAOi =tr.
5tr.@linXIJ l E2t vAT giDng nh th <>L%NE! trHn chAOi =tr.
5tr.@ol,IJ l E2t vAT giDng nh th <>L! trHn chAOi =tr.
5tr.chartIaJ l TrT l:i X` ta th^ a trong chAOi =tr.
5tr.f.e,IJ l E2t vAT giDng nh th <TT! trHn chAOi =tr.
5tr.WontcolorIJ l E2t vAT giDng nh th <NNT#L$ c"'"r!.
5tr.Wont5ieI=ir1J l E2t vAT giDng nh th <NNTS% =ir1!.
5tr.in,e.[WI5rchStr Yin,e.J l TrT l:i v) tr\ trong chAOi =tr v)
tr\ .AKt hi<n MbA tiHn cfa chAOi =rchStr. #hAOi =tr Mdc t_* tC
tr;i 5ang phTi. Tha* 5D inG1g co th( Mdc 56 ,7ng M( .;c
M)nh v) tr\ @ut MbA t_* Xi2* trong chAOi.
5tr.italic5IJ l E2t vAT giDng nh th <%! trHn chAOi =tr.
Ehoa Toan tinY 9:i hPc ZADc gia H N+i
JavaScript
'2
5tr.la5t%n,e.[WI5rchStr Yin,e.J l TrT l:i v) tr\ trong chAOi =tr
v) tr\ .AKt hi<n cADi cqng cfa chAOi =rchStr. #hAOi =tr Mdc t_*
tC phTi 5ang tr;i. Tha* 5D inG1g co th( Mdc 56 ,7ng M( .;c
M)nh v) tr\ @ut MbA t_* Xi2* trong chAOi.
5tr.linXIhreWJ l 9dc 56 ,7ng M( t:o ra *+t X2t nDi HTML M+ng
cho chhAOi =tr. Tha* 5D hr1H l c$L M\ch cfa liHn X2t.
5tr.5*allIJ l E2t vAT giDng nh th <SMLL! trHn chAOi =tr.
5tr.5triXeIJ l E2t vAT giDng nh th <ST$%E! trHn chAOi =tr.
5tr.5A@IJ l T:o ra *+t 5A@5cript cho chAOi =trY giDng th
<Sc>!.
5tr.5A@5tringIaY@J l TrT l:i chAOi con cfa =tr l c;c X` ta tC v)
tr\ th^ a t3i v) tr\ th^ @. #;c X` ta Mdc M2* tC tr;i 5ang phTi
@ut MbA tC [.
5tr.5ApIJ l T:o ra 5Aper5cript cho chAOi =trY giDng th <Sc&!.
5tr.toLoQer#a5eIJ l 9ri chAOi =tr thnh chF th4ng.
5tr.tocpper#a5eIJ l 9ri chAOi =tr thnh chF hoa.
!c ph>n tF cRa &'i t(ng qorA
Nor* Mdc t:o @=i c;c phbn t6 cho phyp ng4i 56 ,7ng Ma thnng tin vo.
Ehi MoY n+i ,Ang IhoVc gi; tr)J cfa c;c phbn t6 5| Mdc chAG(n M2n
*+t ch]ng tr_nh trHn 5erver vAa *+t giao ,i<n Mdc gPi l #o**on
1ateQaG %nterWaceI1iao ti2p vAa *+t crng chAngJ gPi tut l #1%
S6 ,7ng JavaScript @:n co th( vi2t nhFng Mo:n 5cript5 chn vo HTML
cfa @:n M( l* vi<c v3i c;c phbn t6 cfa Wor* v c;c gi; tr) cfa chng.
VWng XI Cc ,h!n t" cYa Dorm
Kh>n tF *+ t3
@Atton
L *+t nt @K* h]n l nt 5A@*it haG nt re5et
I<%N&cT T&@Atton!J
checX@o. M+t checX@o. I<%N&cT T&checX@o.!J
Nilecploa,
L *+t phbn t6 tTi fle lHn cho phyp ng4i 56 ,7ng g6i lHn
*+t fle I<%N&cT T&fle!J
hi,,en M+t tr4ng Ln I<%N&cT T&hi,,en!J
pa55Qor,
M+t tr4ng te.t M( nhep *et XhLA * tKt cT c;c X` ta
nhep vo MwA hi(n th) l ,KA IJI<%N&cT
T&pa55Qor,!J
ra,io M+t nt @K* I<%N&cT T&ra,io!J
re5et M+t nt re5etI<%N&cT T&re5et!J
Ehoa Toan tinY 9:i hPc ZADc gia H N+i
JavaScript
'3
5elect
M+t ,anh 5;ch laa chPn
I<SL#T!<&T%N!option1<"&T%N!
<&T%N!option2<"&T%N!<"SL#T!J
5A@*it M+t nt 5A@*it I<%N&cT T&5A@*it!J
te.t M+t tr4ng te.t I<%N&cT T&te.t!J
te.trea
M+t tr4ng te.t cho phyp nhep vp nhiwA ,-ng
<TiT$!,eWaAlt te.t<"TiT$!J
MOi phbn t6 co th( Mdc MVt tHn M( JavaScript trAG nhep M2n chng
vAa tHn
%.1.2$. 9huVc tnh tGpe
Trong *Oi phbn t6 cfa Wor* MwA co thA+c t\nh tGpeY Mo l *+t .?A
chm M)nh r Xi(A cfa phbn t6 Mdc Ma vo nh nt @K*Y *+t tr4ng te.t
haG *+t checX@o....
i?A Mo co th( l *+t trong c;c gi; tr) 5aA{
Te.t fel,{ te.t
$a,io @Atton{ ra,io
#hecX@o.{ checX@o.
Hi,,en fel,{ hi,,en
SA@*it @Atton{ 5A@*it
$e5et @Atton{ re5et
&a55Qor, fel,{ pa55Qor,
>Atton{ @Atton
Select li5t{ 5electlone
MAltiple 5elect li5t5{ 5electl*Altiple
Te.tarea fel,{ te.tarea
%.1.21. Kh>n tF @Atton
Trong *+t Wor* HTML chALnY chm co hai nt @K* co 5n l 5A@*it v
re5et @=i v) ,F li<A trong Wor* phTi Mdc g6i t3i *+t vi M)a chm c$L
Ith4ng l #1%l>%N 5criptJ M( .6 l` v lA trF.
M+t phbn t6 @Atton Mdc chm M)nh r Xhi 56 ,7ng th %N&cT{
OJ?Kj9 9Kk^YbuttonY ?i*k^YnaA/Y {i;jk^ Ybutton?aA/YQ
Trong th %N&cTY na*e l tHn cfa @AttonY thA+c t\nh ULc co ch^a
nhjn cfa @Atton 5| Mdc hi(n th) trHn Navigator cfa @roQ5er.
#hm co *+t th 5a Xi<n ,AG nhKt MDi v3i @Atton l on!"ic5. E2t hdp v3i
no l c;ch th^c ,AG nhKt c"ic5.&hbn t6 @Attton co XhT npng *= r+ng
Ehoa Toan tinY 9:i hPc ZADc gia H N+i
JavaScript
'0
cho phyp ng4i lep tr_nh JavaScript co th( vi2t Mdc *+t Mo:n *j l<nh
JavaScript M( thac thi vi<c thH* vo *+t nt @K* trong *+t 5cript.
Trong v\ ,7 5aAY thaG v_ 56 ,7ng on#hangeY @:n co th( chmnh 56a
5cript M( M)nh gi; @i(A th^c Xhi @Atton Mdc @K*.
U\ ,7{ 9)nh gi; *+t Wor* 56 ,7ng phbn t6 @Atton.
<HTML!
<H!
<T%TL!@Atton .a*ple<"T%TL!
<S#$%&T LN1c1JavaScript!
<ll H% N$M TH$ >$kS$S
WAnction calcAlateIWor*J
Wor*.re5Alt5.valAe evalIWor*.entrG.valAeJ
el5e
iW IWor*.5vAare.checXe,J "" iWI3J
Wor*.re5Alt.valAeWor*.entrG.valAeWor*.entrG.valAe
el5e
Wor*.re5Alt.valAe Wor*.entrG.valAe 2
""enW, iWI3J
""en, iWI1J
""en, WAnction
"" ST& H%%N1 N$M TH$ >$kS$S ll!
<"S#$%&T!
Ehoa Toan tinY 9:i hPc ZADc gia H N+i
JavaScript
''
<"H!
<>!
<N$M MTH&ST!
UalAe{ <%N&cT T&te.t NMentrG ULc[
on#hangecalcAlateIthi5.Wor*Ythi5.na*eJ!
<>$!
ction I,eWaAlt ,oA@leJ{ <%N&cT T&checX@o. NM5vAare
on#licXcalcAlateIthi5.Wor*Ythi5.na*eJ!
SvAare
<>$!
$e5Alt{ <%N&cT T&te.t NMre5Alt ULc[
on#hangecalcAlateIthi5.Wor*Ythi5.na*eJ!
<"N$M!
<">!
<"HTML!
Trong 5cript nGY @:n Mj thKG c;ch 56 ,7ng th 5a Xi<n on#licX cng nh
thA+c t\nh checXe, l *+t gi; tr) Xi(A >oolean co th( ,qng l* MiwA
Xi<n trong c?A l<nh iW...el5e
>:n co th( thH* *+t checX@o. tHn l 5vAare vo Wor*. N2A h+p nG Ml
dc checXY ch]ng tr_nh 5| lKG gi; tr) cfa noY n2A XhnngY *+t thac thi Ml
dc *Vc M)nh 5| nh?n Mni gi; tr) cfa no. Th 5a Xi<n on#licX trong
checX@o. Mdc M)nh nghga{
I<%N&cT T&checX@o. NM5vAare on#licX calcAlateI thi5.Wor*Y
thi5.na*eJ! J
Ehi Mo n2A ng4i ,qng thaG Mri *+t c?A l<nh Xh;cY Wor* 5| Mdc t\nh
to;n l:i.
9( t:o ra 5a *= r+ng cho checX@o.. @:n co th( thaG Mri h*
calcAlateIJ nh 5aA{
WAnction calcAlateIWor*YcallingNiel,J
iW IcallingNiel, re5AltJ "" iW I1J
iW IWor*.5vAare.checXe,J "" iW I2J
Wor*.entrG.valAe Math.5vrtIWor*.re5Alt.valAeJ
el5e
Wor*.entrG.valAe Wor*.re5Alt.valAe " 2
""en, iWI2J
el5e
iW IWor*.5vAare.checXe,J "" iW I3J
Ehoa Toan tinY 9:i hPc ZADc gia H N+i
JavaScript
'/
Wor*.re5Alt.valAeWor*.entrG.valAeWor*.entrG.valAe
el5e
Wor*.re5Alt.valAe Wor*.entrG.valAe 2
"" en, iW I3J
"" en, iW I1J
var re5Alt
Wor Ii in o@hJ
re5Altre5Altx o@hna*e x .x ix x o@hi x
~n
retArn re5Alt
>:n co th( thH* c;ch th^c nG vo cho MDi tdng car @}ng c;ch
thH* ,-ng l<nh 5aA vo h* M)nh nghga MDi tdng
thi5.,i5plaG#ar ,i5plaG#ar
Nh veG co th( M)nh nghga l:i MDi tdng car nh 5aA{
WAnction carI*aXeY *o,elY GearYoQner J
thi5.*aXe *aXe
thi5.*o,el *o,el
thi5.Gear Gear
thi5.oQner oQner
thi5.,i5plaG#ar ,i5plaG#ar
SaA MoY @:n co th( gPi c;ch th^c ,i5plaG#ar MDi v3i *Oi MDi tdng{
car1.,i5plaG#arIJ
car2.,i5plaG#arIJ
).1.6. SF dGng cho cc thaA chi6u &'i t(ng ,-b./ct
I/`/r/nc/T0
JavaScript co *+t tC Xho; MVc @i<t l thiT * @:n co th( 56
,7ng no cqng v3i *+t c;ch th^c M( gPi t3i MDi tdng hi<n th4i. U\ ,7Y giT
56 @:n co *+t h* vali,ate ,qng M( .;c nhen gi; tr) thA+c t\nh cfa
*+t MDi tdng n}* trong *+t XhoTng no Mo{
WAnction vali,ateIo@hY loQvalY hivalJ
iW I Io@h.valAe<loQ,ateJIo@h.valAe!hivalJ J
alertI%nvali, valAeJ