国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

控制程序的流程

2019-11-17 06:02:15
字體:
來源:轉載
供稿:網友

Jscript 腳本中的語句一般是按照寫的順序來運行的。這種運行稱為順序運行,是程序流的默認方向。

與順序運行不同,另一種運行將程序流轉換到腳本的另外的部分。也就是,不按順序運行下一條語句,而是運行另外的語句。

要使腳本可用,該控制的轉換必須以邏輯方式執行。程序控制的轉換是基于一個“決定”,這個“決定”結果是真或假(返回  Boolean 型 true false)。 創建一個表達式,然后測試其是否為真。主要有兩種程序結構實現本功能。

第一種是選擇結構。用來指明兩種程序流方向,在程序中創建一個交叉點(像岔路)。在 Jscript 中有四種選擇結構可用。

  • 單一選擇結構(if),
  • 二路選擇結構(if/else),
  • 內聯三元運算符 ?:
  • 多路選擇結構(switch)。

第二種類型的程序控制結構是循環結構。使用循環結構來指明當某些條件保持為真時要重復的動作。當控制語句的條件得到滿足時(通常在某些迭代的特定數字后),控制跳過循環結構傳遞到下條語句。在 Jscript 中有四種循環結構可用。

  • 在循環的開頭測試表達式(while),
  • 在循環的末尾測試表達式(do/while),
  • 對對象的每個屬性都進行操作(for/in),
  • 計數器控制的循環(for)。

通過嵌套和堆棧選擇、循環控制結構,可以創建相當復雜的腳本。

第三種形式的結構程序流由意外處理給出,本文檔不作討論。

使用條件語句

JScript 支持 ifif...else 條件語句。在 if 語句中將測試一個條件,假如該條件滿足測試,執行相關的 JScript 編碼。在 if...else 語句中,假如條件不滿足測試,則將執行不同的代碼。最簡單的 if 語句格式可以在一行中寫完,不過更常見的是多行的 ifif...else 語句。

下述示例演示了使用 ifif...else 語句的各種可能的語法。第一個示例演示了最簡單的布爾測試。當(且僅當)括號之間的項的值為(或者可被強制轉換為) true 時,if 后續的語句或語句塊才會被執行。

// smash() 函數是在該代碼的其他地方定義的。// 布爾測試,看 newShip 是否為 true。if (newShip)   smash(champagneBottle,bow); // 在本示例中,除非兩個條件都為真,否則該測試將不會被滿足。if (rind.color == "deep yellow " && rind.texture == "large and small wrinkles"){   theResponse = ("Is it a Crenshaw melon?");}// 在本示例中,只要任何一個條件為真,則測試即會滿足。var theReaction = "";if ((dayOfWeek == "Saturday")  (dayOfWeek == "Sunday")){   theReaction = ("I'm off to the beach!");}else{   theReaction = ("Hi ho, hi ho, it's off to work I go!");}

條件運算符

JScript 也支持隱式的條件格式。該格式在要測試的條件后使用一個問號(而不是在條件前的 if )。它也指定兩個可選項,一個在滿足條件時使用,另一個在條件不滿足時使用。這兩個選擇項之間必須用一個冒號隔開。

var hours = "";// 下面的代碼指定 hours 是包含 theHour 的內容,// 還是包含 theHour - 12 的內容。hours += (theHour >= 12) ? " PM" : " AM";

假如要一起測試多個條件,并且知道某個條件比其他條件更可能滿足或不滿足測試,可以使用稱為“短路計算”的特性來加速腳本的運行速度。當 JScript 計算邏輯表達式時,只計算要得到結果所需的子表達式。

例如,假如有一個“與”表達式,如 ((x == 123) && (y == 42)),Jscript 首先檢查 x 是否為 123。假如不是,即使 y 等于 42,整個表達式的值也不可能為 true。因此,并不對 y 作測試,Jscript 返回 false 值。

類似地,假如多個條件中只要有一個為真(使用 運算符),則當任何一個條件滿足該測試時測試則停止。假如要測試的條件包括函數調用或其他復合表達式,這種處理方式就有效。出于此種想法,寫 OR 表達式時,先寫最有可能為 true 的條件。寫 AND 表達式時,先寫最有可能為 false 的條件。

以這種方式設計腳本的好處的一個示例是:在下例中假如 runfirst() 返回 0 或 false, 則不會運行 runsecond()。

if ((runfirst() == 0)  (runsecond() == 0)) {    // 若干代碼。}

使用循環



上一篇:getUTCHours 方法

下一篇:創建自己的對象

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 枣阳市| 抚松县| 武威市| 隆德县| 桂东县| 安宁市| 永昌县| 平乡县| 弋阳县| 航空| 阳信县| 阿勒泰市| 公安县| 德江县| 恭城| 澳门| 鹤山市| 高雄市| 太保市| 同仁县| 淳安县| 易门县| 潞城市| 墨竹工卡县| 阿尔山市| 棋牌| 新民市| 新邵县| 广西| 类乌齐县| 烟台市| 远安县| 深圳市| 武隆县| 赤城县| 叶城县| 云浮市| 城固县| 鹰潭市| 宁明县| 闽清县|