<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>

                ??一站式輕松地調用各大LLM模型接口,支持GPT4、智譜、豆包、星火、月之暗面及文生圖、文生視頻 廣告
                # 您必須知道的 JavaScript 變量范圍規則 > 原文: [https://howtodoinjava.com/javascript/javascript-variable-scope-rules/](https://howtodoinjava.com/javascript/javascript-variable-scope-rules/) 每種編程語言都有變量,它們只能在特定范圍內訪問。 使用 JavaScript 時,作用域并不是一個棘手的功能。 它們看起來很簡單,但是如果您不知道 javascript 變量的范圍是多少,可能會出錯。 讓我們更詳細地了解 javascript 的作用域。 在 JavaScript 中,變量僅通過兩種方式限定范圍: 1. 全局范圍 2. 函數范圍 只需記住,當您使用`var`關鍵字定義變量時,就聲明了 JavaScript 中的作用域。 讓我們從簡單的一個開始 - Java 中的全局范圍變量。 ## 全局范圍 在以下情況下,用 javascript 聲明的變量將具有全局作用域: #### a)在任何函數之外定義的變量 ```java //'foo' is global variable var foo = 'I am GLOBAL foo'; //'foo' is function local variable function test() { var foo = 'I am LOCAL foo'; } console.log(foo); //I am GLOBAL foo ``` #### 在任何函數中定義的變量 - 不使用“`var`”關鍵字 ```java //'foo' is function local variable function test() { foo = 'I am GLOBAL foo'; } console.log(foo); //I am GLOBAL foo console.log(window.foo); //I am GLOBAL foo ``` 所有全局作用域變量均作為`window`對象的屬性可見。 ## 函數范圍 從全局作用域詳細信息可以明顯看出,函數作用域變量是在函數內部使用“`var`”關鍵字聲明的。 ```java //'foo' is function local variable function test() { var foo = 'I am LOCAL foo'; console.log(foo); //I am LOCAL foo } console.log(foo); //foo is not defined ``` 請注意, **javascript 函數具有自己的作用域,但是塊(例如`while`,`if`和`for`語句)則沒有**。 ## 混合全局變量和函數范圍變量 現在,在基本理解之后,我們來看一個示例,在該示例中,我們將在單個頁面的不同范圍中使用變量`foo`,然后我們將在其上**明確說明 javascript 范圍的工作原理**。 ```java //Define global scoped 'foo' var foo = 'I am GLOBAL foo'; //Inside if block foo will refer to global foo if ( true ) { var foo = 'I am GLOBAL foo TOO'; console.log( foo ); //I am GLOBAL foo TOO } //As blocks do not have their own scope //So foo in if block referred to global scope foo //foo refer to new value console.log( foo ); //I am GLOBAL foo TOO //Inside function - foo has it's own declaration function test() { var foo = 'I am LOCAL foo'; console.log( foo ); //I am LOCAL foo } test(); //Ouside function foo is still globally declared foo console.log( foo ); //I am GLOBAL foo TOO ``` 了解僅在函數內部聲明的`foo`如何具有自己的作用域,否則所有`foo`變量都引用全局作用域`foo`。 提示:無論范圍如何,都應始終使用`var`初始化變量。 這樣,您的變量將具有您期望的范圍,并且可以避免意外的全局變量。 我希望當我們談論 javascript 變量的范圍時能夠使我更加清楚。 將我的問題放在評論部分。 學習愉快!
                  <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>

                              哎呀哎呀视频在线观看