争怎路由网:是一个主要分享无线路由器安装设置经验的网站,汇总WiFi常见问题的解决方法。

JavaScript的变量作用域解析(详细说明)

时间:2024/6/6作者:未知来源:争怎路由网人气:

网页的本质就是超级文本标记语言,通过结合使用其他的Web技术(如:脚本语言、公共网关接口、组件等),可以创造出功能强大的网页。因而,超级文本标记语言是万维网(Web)编程的基础,也就是说万维网是建立在超文本基础之上的。超级文本标记语言之所以称为超文本标记语言,是因为文本中包含了所谓“超级链接”点。
本章给大家带来JavaScript的变量作用域解析(详解),让大家可以了解关于JavaScrip作用域的一些小知识。有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。

什么是JavaScript作用域?

在JavaScript中,作用域是可访问变量,对象,函数的集合。

作用域在函数内可以修改。

JavaScript局部作用域

变量在函数内声明,变量为局部变量(局部作用域)

局部变量:只能在函数内部访问。

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
    <button onclick="myFunction(1,2)">试一试</button>
    <p id="demo"></p>
</body>
<script type="text/javascript">
    function name() {
        //在此处声明一个变量
        var a = 10;
        //函数内可以调用 a
    }
    //此处(函数外)不能调用变量 a  
    //因为局部变量只作用于函数内,所以不同的函数可以使用相同名称的变量名  
    //局部变量在函数开始执行时创建,函数执行完毕后,变量会自动销毁
</script>
</html>

JavaScript全局变量

变量在函数外定义,即为全局变量。

全局变量有全局作用域,网页中所有脚本和函数都可使用。

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
    <button onclick="myFunction(1,2)">试一试</button>
    <p id="demo"></p>
</body>
<script type="text/javascript">
    /* 在此处声明一个全局变量 */
    var a = 10;
    function name() {
        //函数内可以调用 a
    }
    //此处也能调用变量 a
</script>
</html>

如果变量在函数内没有声明(没有使用var关键字声明)改变量为全局变量。

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
    <button onclick="myFunction(1,2)">试一试</button>
    <p id="demo"></p>
</body>
<script type="text/javascript">
    
    function name() {
        /* 在此处声明一个变量 */
          a = 10;
     /* a没有使用var关键字声明,则默认为全局变量 */

    }
    
</script>
</html>

JavaScript变量生命周期

变量的生命周期在它的声明时初始化。局部变量在函数执行完毕后销毁。全局变量在页面关闭后销毁。

函数参数

函数参数只在函数内起作用,是局部变量。

HTML中的全局 变量

在HTML中,全局变量是window对象,所有数据变量都属于window对象。

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
    <button onclick="myFunction(1,2)">试一试</button>
    <p id="demo"></p>
</body>
<script type="text/javascript">
    function name() {
         a = 10;
    }
    //此处可使用window.a调用变量 a
</script>
</html>

全局变量或者函数可以覆盖window对象的变量或者函数。局部变量包括window对象,可以覆盖全局变量和函数。

在es6中提供了let关键字和const关键字

let的声明方式与var相同,用let来代替var声明变量,就可以把当前变量限制在代码块中。

使用const声明的是常量,其值一旦被设置便不可被更改。

以上就是JavaScript的变量作用域解析(详解)的详细内容,更多请关注php中文网其它相关文章!


网站建设是一个广义的术语,涵盖了许多不同的技能和学科中所使用的生产和维护的网站。



关键词:JavaScript的变量作用域解析(详细说明)




Copyright © 2012-2018 争怎路由网(http://www.zhengzen.com) .All Rights Reserved 网站地图 友情链接

免责声明:本站资源均来自互联网收集 如有侵犯到您利益的地方请及时联系管理删除,敬请见谅!

QQ:1006262270   邮箱:kfyvi376850063@126.com   手机版