<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                企業??AI智能體構建引擎,智能編排和調試,一鍵部署,支持知識庫和私有化部署方案 廣告
                有時候一個代碼塊應該只在一定條件下運行。流程控制 - 通過?`if`?和?`else`?代碼塊,讓你的代碼只在滿足一定的條件下運行。 ~~~ // Flow control var foo = true; var bar = false; if ( bar ) { // This code will never run. console.log( "hello!" ); } if ( bar ) { // This code won't run. } else { if ( foo ) { // This code will run. } else { // This code would run if foo and bar were both false. } } ~~~ 雖然在單行?`if`?語句里,大括號不是必須的,但應該保持一致的使用它們,這樣使得代碼會更有可讀性。 注意不要在?`if`?或?`else`?代碼塊中,多次定義相同名稱的函數。因為這樣做可能會得不到預期的結果。 ## Truthy 和 Falsy 為了成功的使用流程控制,重要的一點是需要理解哪些類型的值是“truthy”,哪些是“falsy”。有時候一個值實際計算的結果和看起來應該會得到的結果不同。 ~~~ // Values that evaluate to false: false "" // An empty string. NaN // JavaScript's "not-a-number" variable. null undefined // Be careful -- undefined can be redefined! 0 // The number zero. ~~~ ~~~ // Everything else evaluates to true, some examples: "0" "any string" [] // An empty array. {} // An empty object. 1 // Any non-zero number. ~~~ ## 有條件的變量賦值與三元運算符 有時一個變量要根據一些條件而設定。可以使用?`if`?或?`else`?語句,但在許多情況下,三元運算符更加方便。三元運算符測試一個條件,如果條件為真,則返回一個確定的值,否則返回一個不同的值。 三元運算符: ~~~ // Set foo to 1 if bar is true; otherwise, set foo to 0: var foo = bar ? 1 : 0; ~~~ 雖然三元運算符可以在不將返回值賦值給變量的情況下使用,但這是不推薦的。 ## switch 語句 比起使用一系列的?`if`?或?`else`?代碼塊,有時使用一個?`switch`?語句替代會更有效。`switch`?語句查看一個變量或表達式的值,并根據不同的值執行不同的代碼塊。 ~~~ // A switch statement switch ( foo ) { case "bar": alert( "the value was bar -- yay!" ); break; case "baz": alert( "boo baz :(" ); break; default: alert( "everything else is just ok" ); } ~~~ 在 JavaScript 中 switch 語句有些不太流行,因為同樣的行為可以通過創建一個可重用和易測試的對象來完成。 ~~~ var stuffToDo = { "bar": function() { alert( "the value was bar -- yay!" ); }, "baz": function() { alert( "boo baz :(" ); }, "default": function() { alert( "everything else is just ok" ); } }; // Check if the property exists in the object. if ( stuffToDo[ foo ] ) { // This code won't run. stuffToDo[ foo ](); } else { // This code will run. stuffToDo[ "default" ](); } ~~~ 對象會在?[類型](http://js101.co/javascript-101/types.html)?和?[對象](http://js101.co/javascript-101/objects.html)?部分進一步討論。
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看