当前位置: 首页 » 综合知识 » it知识 » 正文

JavaScript作用域实例代码分析

发布时间:2023-08-02 以下文章来源于网友投稿,内容仅供参考!

一、本地JavaScript变量

一个变量声明在JavaScript函数内部,成为函数的局部变量。

局部变量有局部作用域: 它们只能在函数中访问。

JS:

//code here can not use carName   <script>     reFunction();     document.getElementById("demo").innerHTML =     "carName的类型是 " + typeof carName;      function reFunction() {         var carName = "Volvo";     } </script>

由于局部变量只在它们的函数中被识别,所以具有相同名称的变量可以在不同的函数中使用。

当函数启动时创建局部变量,当函数完成时删除。

二、全局JavaScript变量

函数外声明的变量, 成为全局变量。

全局变量具有全局作用域: 网页上的所有脚本和函数都可以访问它。

<script>     var carName = "Volvo"; //可以从任何脚本或函数访问全局变量     myFunction();      function myFunction() {         document.getElementById("demo").innerHTML =         "I can display " + carName;     } </script>

自动全局

如果给未声明的变量赋值, 它会自动成为全局变量。

此代码示例将声明一个全局变量carName,即使赋的值是函数内部。

myFunction();  // code here can use carName  function myFunction() {     carName = "Volvo"; }

不要创建全局变量,除非你非常需要,在严格模式下 "Strict Mode"自动全局变量将失败。

三、在HTML中的全局变量

在JavaScript中,全局作用域是完整的JavaScript环境。

在HTML中,全局作用域是window对象。所有的全局变量都属于window对象。

<!DOCTYPE html> <html lang="en"> <head>   <meta charset="UTF-8">   <title>项目</title> </head> <body style="background-color: aqua;">    <p>   在HTML中,所有的全局变量将成为窗口window变量。   </p>    <p id="demo"></p>    <script>     var carName = "Volvo";      // code here can use window.carName     document.getElementById("demo").innerHTML = "I can display " + window.carName; </script>  </body> </html>

全局变量(或函数)可以覆盖窗口变量(或函数). 任何函数,包括窗口对象,都可以覆盖全局变量和函数.

四、JavaScript 代码块作用域

表中是var,let和const之间的区别。

用var关键字声明的变量不能具有块作用域,{}可以从块外部访问在块内部声明的变量:

{   var num = 50;   }   // num 能在这里使用

用let关键字声明的变量可以具有“块作用域”。

{}不能从块外部访问在块内部声明的变量:

{   let num = 50;   }   // num不能在这里使用

声明变量with const与let]涉及块作用域类似。

{   const num = 50;   }   // num不能在这里使用

常量的值不能通过重新分配而更改,也不能重新声明。

  • • Linux Ecdsa密钥长度选择有何依据

    在Linux

  • • Linux Khook在内核监控中的应用如何

    Linux

  • • Linux Gsoap是否支持异步通信

    GSOAP是

  • • Linux Coremail如何提升用户体验

    提升Linu

  • • Linux Ecdsa算法有哪些局限性

    ECDSA

  • 哎呀音乐钢琴键盘学习《 钢琴主人训练营》 西瓜学琴
    郭蝈 陪练钢琴 30节课时 考级刚需 让孩子每一次练琴都是高质量的
    30天轻松学会五线谱 流行钢琴自学初级教程 牙牙学琴
    流行爵士钢琴实战技巧VIP课 - 继伟 哎呀音乐
    【海上钢琴师】原版 MT1990钢琴谱
    百首经典流行钢琴实战曲集 - 继伟
    雷费尔德电钢琴重锤88键专业考级儿童初学者数码电子钢琴家用
    小练咖 真人钢琴陪练 1v1服务 2999随时退 1课时50分钟 考级刚需
    雅马哈电钢琴88键重锤CLP735智能数码电子钢琴家用专业初学者考级
    【原装进口】Yamaha/雅马哈钢琴 b121 SC2原声静音钢琴
  • 珠海专业调钢琴
  • 天津宝坻区调钢琴
  • 天津静海区钢琴调音
  • 成都简阳市钢琴调律
  • 大连瓦房店市钢琴调音
  • 眉山调钢琴联系方式
  • 惠州大亚湾钢琴调琴师
  • 长治调琴师
  • 厦门湖里区钢琴调音师
  • 上海普陀区钢琴调音师