狠狠色丁香婷婷综合尤物/久久精品综合一区二区三区/中国有色金属学报/国产日韩欧美在线观看 - 国产一区二区三区四区五区tv

LOGO OA教程 ERP教程 模切知識交流 PMS教程 CRM教程 開發文檔 其他文檔  
 
網站管理員

JavaScript的表達式與運算符

admin
2010年12月31日 10:20 本文熱度 3241
表達式與運算符
表達式 與數學中的定義相似,表達式是指具有一定的值的、用運算符把常數和變量連接起來的代數式。一個表達式可以只包含一個常數或一個變量。運算符可以是四則運算符、關系運算符、位運算符、邏輯運算符、復合運算符。下表將這些運算符從高優先級到低優先級排列:
括號(x) [x]中括號只用于指明數組下標求反、自加、自減-x返回 x 的相反數!x返回與 x (布爾值)相反的布爾值x++x 值加 1,但仍返回原來的 x 值x--x 值減 1,但仍返回原來的 x 值 ++xx 值加 1,返回后來的 x 值--xx 值減 1,返回后來的 x 值乘、除x*y返回 x 乘以 y 的值x/y返回 x 除以 y 的值x%y返回 x 與 y 的模(x 除以y 的余數)加、減x+y返回 x 加 y 的值x-y返回 x 減 y 的值關系運算x<y x<=y
x>=y x>y當符合條件時返回 true 值,否則返回 false 值等于、
不等于x==y當 x 等于 y 時返回 true 值,否則返回 false 值x!=y當 x 不等于 y 時返回 true 值,否則返回 false 值位與x&y當兩個數位同時為 1 時,返回的數據的當前數位為 1,其他情況都為 0位異或x^y兩個數位中有且只有一個為 0 時,返回 0,否則返回 1位或x|y兩個數位中只要有一個為 1,則返回 1;當兩個數位都為零時才返回零位運算符通常會被當作邏輯運算符來使用。它的實際運算情況是:把兩個操作數(即 x 和 y)化成二進制數,對每個數位執行以上所列工作,然后返回得到的新二進制數。由于“真”值在電腦內部(通常)是全部數位都是 1 的二進制數,而“假”值則是全部是 0 的二進制數,所以位運算符也可以充當邏輯運算符。邏輯與x&&y當 x 和 y 同時為 true 時返回 true,否則返回 false邏輯或x||y當 x 和 y 任意一個為 true 時返回 true,當兩者同時為 false 時返回 false邏輯與/或有時候被稱為“快速與/或”。這是因為當第一操作數(x)已經可以決定結果,它們將不去理會 y 的值。例如,false && y,因為x == false,不管 y 的值是什么,結果始終是 false,于是本表達式立即返回 false,而不論 y 是多少,甚至 y 可以導致出錯,程序也可以照樣運行下去。 條件c?x:y當條件 c 為 true 時返回 x 的值(執行 x 語句),否則返回 y 的值(執行 y 語句)賦值、
復合運算x=y把 y 的值賦給 x,返回所賦的值x+=y x-=y x*=y
x/=y x%=yx 與 y 相加/減/乘/除/求余,所得結果賦給 x,并返回 x 賦值后
語句
下面將開始討論 JavaScript 基本編程命令,或者叫“語句”。

注釋

像其他所有語言一樣,JavaScript 的注釋在運行時也是被忽略的。注釋只給程序員提供消息。

JavaScript 注釋有兩種:單行注釋和多行注釋。單行注釋用雙反斜杠“//”表示。當一行代碼有“//”,那么,“//”后面的部分將被忽略。而多行注釋是用“/*”和“*/”括起來的一行到多行文字。程序執行到“/*”處,將忽略以后的所有文字,直到出現“*/”為止。

提示 如果你的程序需要草稿,或者需要讓別人閱讀,注釋能幫上大忙。養成寫注釋的習慣,能節省你和其他程序員的寶貴時間,使他們不用花費多余的時間琢磨你的程序。在程序調試的時候,有時需要把一段代碼換成另一段,或者暫時不要一段代碼。這時最忌用 Delete 鍵,如果想要回那段代碼怎么辦?最好還是用注釋,把暫時不要的代碼“隱”去,到確定方法以后再刪除也不遲。

if 語句if ( <條件> ) <語句1> [ else <語句2> ];本語句有點象條件表達式“?:”:當<條件>為真時執行<語句1>,否則,如果 else 部分存在的話,就執行<語句2>。與“?:”不同的是,if 只是一條語句,不會返回數值。<條件>是布爾值,必須用小括號括起來;<語句1>和<語句2>都只能是一個語句,欲使用多條語句,請用語句塊。

注意 請看下例:if (a == 1)
  if (b == 0) alert(a+b);
else
  alert(a-b);
本代碼企圖用縮進的方法說明 else 是對應 if (a == 1) 的,但是實際上,由于 else 與 if (b == 0) 最相近,本代碼不能按作者的想法運行。正確的代碼是if (a == 1) {
  if (b == 0) alert(a+b);
} else {
  alert(a-b);
}
提示一行代碼太長,或者涉及到比較復雜的嵌套,可以考慮用多行文本,如上例,if (a == 1) 后面沒有立即寫上語句,而是換一行再繼續寫。瀏覽器不會混淆的,當它們讀完一行,發現是一句未完成語句,它們會繼續往下讀。使用縮進也是很好的習慣,當一些語句與上面的一兩句語句有從屬關系時,使用縮進能使程序更易讀,方便程序員進行編寫或修改工作。

循環體for (<變量>=<初始值>; <循環條件>; <變量累加方法>) <語句>;本語句的作用是重復執行<語句>,直到<循環條件>為 false 為止。它是這樣運作的:首先給<變量>賦<初始值>,然后*判斷<循環條件>(應該是一個關于<變量>的條件表達式)是否成立,如果成立就執行<語句>,然后按<變量累加方法>對<變量>作累加,回到“*”處重復,如果不成立就退出循環。這叫做“for循環”。下面看看例子。for (i = 1; i < 10; i++) document.write(i);本語句先給 i 賦初始值 1,然后執行 document.write(i)語句(作用是在文檔中寫 i 的值,請參越“對象化編程”一章);重復時 i++,也就是把 i 加 1;循環直到 i<10 不滿足,也就是 i>=10 時結束。結果是在文檔中輸出了“123456789”。

和 if 語句一樣,<語句>只能是一行語句,如果想用多條語句,你需要用語句塊。

與其他語言不同,JavaScript 的 for 循環沒有規定循環變量每次循環一定要加一或減一,<變量累加方法>可以是任意的賦值表達式,如 i+=3、i*=2、i-=j 等都成立。

提示 適當的使用 for 循環,能使 HTML 文檔中大量的有規律重復的部分簡化,也就是用 for 循環重復寫一些 HTML 代碼,達到提高網頁下載速度的目的。不過請在 Netscape 中重復進行嚴格測試,保證通過了才好把網頁傳上去。作者曾試過多次因為用 for 循環向文檔重復寫 HTML 代碼而導致 Netscape“猝死”。IE 中絕對沒有這種事情發生,如果你的網也是只給 IE 看的,用多多的 for 也沒問題。

除了 for 循環,JavaScript 還提供 while 循環。while (<循環條件>) <語句>;比 for 循環簡單,while 循環的作用是當滿足<循環條件>時執行<語句>。while 循環的累加性質沒有 for 循環強。<語句>也只能是一條語句,但是一般情況下都使用語句塊,因為除了要重復執行某些語句之外,還需要一些能變動<循環條件>所涉及的變量的值的語句,否則一但踏入此循環,就會因為條件總是滿足而一直困在循環里面,不能出來。這種情況,我們習慣稱之為“死循環”。死循環會弄停當時正在運行的代碼、正在下載的文檔,和占用很大的內存,很可能造成死機,應該盡最大的努力避免。

break 和 continue

有時候在循環體內,需要立即跳出循環或跳過循環體內其余代碼而進行下一次循環。break 和 continue 幫了我們大忙。

break;

本語句放在循環體內,作用是立即跳出循環。

continue;

本語句放在循環體內,作用是中止本次循環,并執行下一次循環。如果循環的條件已經不符合,就跳出循環。

for (i = 1; i < 10; i++) {
  if (i == 3 || i == 5 || i == 8) continue;
  document.write(i);
}
輸出:124679。

switch 語句

如果要把某些數據分類,例如,要把學生的成績按優、良、中、差分類,我們可能會用 if 語句:if (score >= 0 && score < 60) {
  result = 'fail';
} else if (score < 80) {
  result = 'pass';
} else if (score < 90) {
  result = 'good';
} else if (score <= 100) {
  result = 'excellent';
} else {
  result = 'error';
}
看起來沒有問題,但使用太多的 if 語句的話,程序看起來有點亂。switch 語句就是解決這種問題的最好方法。switch (e) {
  case r1: (注意:冒號)
    ...
    [break;]
  case r2:
    ...
    [break;]
  ...
  [default:
    ...]
}
這一大段的作用是:計算 e 的值(e 為表達式),然后跟下邊“case”后的 r1、r2……比較,當找到一個相等于 e 的值時,就執行該“case”后的語句,直到遇到 break 語句或 switch 段落結束(“}”)。如果沒有一個值與 e 匹配,那么就執行“default:”后邊的語句,如果沒有 default 塊,switch 語句結束。

上邊的 if 段用 switch 改寫就是:switch (parseInt(score / 10)) {
  case 0:
  case 1:
  case 2:
  case 3:
  case 4:
  case 5:
    result = 'fail';
    break;
  case 6:
  case 7:
    result = 'pass';
    break;
  case 8:
    result = 'good';
    break;
  case 9:
    result = 'excellent';
    break;
  default:
    if (score == 100)
      result = 'excellent';
    else
      result = 'error';
}
其中 parseInt()方法是以后會介紹的,作用是取整。最后 default 段用的 if 語句,是為了不把 100 分當錯誤論(parseInt(100 / 10) == 10)。

該文章在 2010/12/31 10:20:05 編輯過
關鍵字查詢
相關文章
正在查詢...
點晴ERP是一款針對中小制造業的專業生產管理軟件系統,系統成熟度和易用性得到了國內大量中小企業的青睞。
點晴PMS碼頭管理系統主要針對港口碼頭集裝箱與散貨日常運作、調度、堆場、車隊、財務費用、相關報表等業務管理,結合碼頭的業務特點,圍繞調度、堆場作業而開發的。集技術的先進性、管理的有效性于一體,是物流碼頭及其他港口類企業的高效ERP管理信息系統。
點晴WMS倉儲管理系統提供了貨物產品管理,銷售管理,采購管理,倉儲管理,倉庫管理,保質期管理,貨位管理,庫位管理,生產管理,WMS管理系統,標簽打印,條形碼,二維碼管理,批號管理軟件。
點晴免費OA是一款軟件和通用服務都免費,不限功能、不限時間、不限用戶的免費OA協同辦公管理系統。
Copyright 2010-2025 ClickSun All Rights Reserved