亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

JavaScript中變量的作用域詳解

 更新時(shí)間:2022年03月10日 16:31:59   作者:.NET開(kāi)發(fā)菜鳥(niǎo)  
本文詳細(xì)講解了JavaScript中變量的作用域,文中通過(guò)示例代碼介紹的非常詳細(xì)。對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下

一、變量的分類(lèi)

在JavaScript中變量分為兩種:

  • 全局變量
  • 局部變量

二、變量的作用域

1、局部變量的作用域

局部變量:在函數(shù)內(nèi)部定義的變量稱(chēng)為局部變量,其作用域?yàn)樵摵瘮?shù)內(nèi)部,在該函數(shù)外部不能被訪問(wèn)??聪旅娴睦樱?/p>

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>局部變量作用域</title>
    <script>
        // 定義函數(shù)fn
        function fn(){
            var a=5;// 定義局部變量
            document.write(a);
        };
        // 調(diào)用函數(shù)fn
        fn();
        // 定義函數(shù)fn2
        function fn2(){
            document(a);
        };
        // 調(diào)用函數(shù)fn2
        fn2();
    </script>
</head>
<body>
    
</body>
</html>

結(jié)果:

2、全局變量

全局變量:定義在函數(shù)外部的變量稱(chēng)為全局變量,其作用域是整個(gè)JavaScript代碼塊??聪旅娴睦樱?/p>

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>全局變量作用域</title>
    <script>
       var number; // 全局變量
       function fn(){
          number=5;
          document.write("number的值是:"+number+"<br />");
       };
       function fn2(){
           ++number;
           document.write("number的值是:"+number+"<br />");
       }
       fn();
       fn2();
    </script>
</head>
<body>
    
</body>
</html>

結(jié)果:

注意:

a、如果在函數(shù)內(nèi)定義了和全局變量相同名稱(chēng)的局部變量,那么在函數(shù)內(nèi)部使用就近原則:即在函數(shù)內(nèi)部局部變量起作用。

看下面的例子:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>全局變量作用域</title>
    <script>
       var number; // 全局變量
       /*       function fn(){
          number=5;
          document.write("number的值是:"+number+"<br />");
       };
       function fn2(){
           ++number;
           document.write("number的值是:"+number+"<br />");
       } */

       // 就近原則
       function fn(){
          var number="我是局部變量";
          document.write("number的值是:"+number+"<br />");
       };
       function fn2(){
           number="我是全局變量"
           document.write("number的值是:"+number+"<br />");
       }
       fn();
       fn2();
    </script>
</head>
<body>
    
</body>
</html>

結(jié)果:

b、全局變量window

如果在定義變量的時(shí)候沒(méi)有使用var,那么默認(rèn)是全局變量,無(wú)論是在函數(shù)外部還是在函數(shù)內(nèi)部定義變量??聪旅娴睦樱?/p>

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>全局變量作用域</title>
    <script>
       var number; // 全局變量
       /*       function fn(){
          number=5;
          document.write("number的值是:"+number+"<br />");
       };
       function fn2(){
           ++number;
           document.write("number的值是:"+number+"<br />");
       } */

       // 就近原則
 /*       function fn(){
          var number="我是局部變量";
          document.write("number的值是:"+number+"<br />");
       };
       function fn2(){
           number="我是全局變量"
           document.write("number的值是:"+number+"<br />");
       }
       fn();
       fn2(); */

       // windows
       // 相當(dāng)于window.a
       a=12;
       function fn(){
           // 相當(dāng)于window.b
           b="我是window對(duì)象,是全局變量";
       };
       fn();
       document.write("a="+a+"<br />");
       document.write("b="+b+"<br />");
    </script>
</head>
<body>
    
</body>
</html>

結(jié)果:

c、應(yīng)盡量避免使用全局變量,以免團(tuán)隊(duì)開(kāi)發(fā)變量發(fā)生沖突。

以上所述是小編給大家介紹的JavaScript中變量的作用域,希望對(duì)大家有所幫助。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!

相關(guān)文章

最新評(píng)論