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

ngôn ngữ lập trình JavaScript

Chia sẻ: Nguyenvan Liem | Ngày: | Loại File: DOC | Số trang:0

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

Giống với HTML và Java, JavaScript được thiết kế độc lập với hệ điều hành. Nó có thể chạy trên bất kỳ hệ điều hành nào có trình duyệt hỗ trợ JavaScript. Ngoài ra JavaScript giống Java ở khía cạnh an ninh: JavaScript không thể đọc và viết vào file của người dùng.

Chủ đề:
Lưu

Nội dung Text: ngôn ngữ lập trình JavaScript

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

CÓ THỂ BẠN MUỐN DOWNLOAD

 

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