zoukankan      html  css  js  c++  java
  • JavaScript学习——JavaScript 作用域 事件

    JavaScript 作用域

    在 JavaScript 中, 对象和函数同样也是变量。

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

    JavaScript 函数作用域: 作用域在函数内修改。

    JavaScript 局部作用域

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

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

    <!DOCTYPE html>
    <html>
    <head> 
    <meta charset="utf-8"> 
    <title>mtimeyu</title> 
    </head>
    <body>
    
    <p>局部变量在声明的函数外不可以访问。</p>
    <p id="demo"></p>
    <script>
    myFunction();
    document.getElementById("demo").innerHTML = "carName 的类型是:" +  typeof carName;
    function myFunction() 
    {
        var carName = "BMW";
    }
    </script>
    
    </body>
    </html>
    

     

    因为局部变量只作用于函数内,所以不同的函数可以使用相同名称的变量。

    局部变量在函数开始执行时创建,函数执行完后局部变量会自动销毁。

    JavaScript 全局变量

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

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

    <body>
    
    <p>全局变量在任何脚本和函数内均可访问。</p>
    <p id="demo"></p>
    <script>
    var carName = "BMW";
    myFunction();
    function myFunction() 
    {
        document.getElementById("demo").innerHTML =
    		"我可以显示 " + carName;
    }
    </script>
    
    </body>
    

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

    以下实例中 carName 在函数内,但是为全局变量。

    // 此处可调用 carName 变量
     
    function myFunction() {
        carName = "BMW";
        // 此处可调用 carName 变量
    }
    

    JavaScript 变量生命周期

    JavaScript 变量生命周期在它声明时初始化。

    局部变量在函数执行完毕后销毁。

    全局变量在页面关闭后销毁。

    函数参数

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

    HTML 中的全局变量

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

    //此处可使用 window.carName
     
    function myFunction() {
        carName = "BMW";
    }
    

     JavaScript 事件

    当在 HTML 页面中使用 JavaScript 时, JavaScript 可以触发这些事件。

    HTML 事件

    HTML 事件可以是浏览器行为,也可以是用户行为。

    以下是 HTML 事件的实例:

    • HTML 页面完成加载
    • HTML input 字段改变时
    • HTML 按钮被点击

    通常,当事件发生时,你可以做些事情。

    在事件触发时 JavaScript 可以执行一些代码。

    HTML 元素中可以添加事件属性,使用 JavaScript 代码来添加 HTML 元素。

    单引号:

    <some-HTML-element some-event='JavaScript 代码'>

    双引号:

    <some-HTML-element some-event="JavaScript 代码">
    <body>
    
    <button onclick="getElementById('demo').innerHTML=Date()">现在的时间是?</button>
    <p id="demo"></p>
    
    </body>
    

     代码将修改自身元素的内容 (使用 this.innerHTML):

    <button onclick="this.innerHTML=Date()">现在的时间是?</button>
    

     常见的HTML事件

    事件描述
    onchange HTML 元素改变
    onclick 用户点击 HTML 元素
    onmouseover 用户在一个HTML元素上移动鼠标
    onmouseout 用户从一个HTML元素上移开鼠标
    onkeydown 用户按下键盘按键
    onload 浏览器已完成页面的加载

    事件可以用于处理表单验证,用户输入,用户行为及浏览器动作:

    • 页面加载时触发事件
    • 页面关闭时触发事件
    • 用户点击按钮执行动作
    • 验证用户输入内容的合法性

    可以使用多种方法来执行 JavaScript 事件代码:

    • HTML 事件属性可以直接执行 JavaScript 代码
    • HTML 事件属性可以调用 JavaScript 函数
    • 你可以为 HTML 元素指定自己的事件处理程序
    • 你可以阻止事件的发生。
  • 相关阅读:
    Pwn-warmup_csaw_2016 writeup
    操作系统习题总结
    操作系统-存储器管理部分(待更新)
    树与二叉树之间的互相转换
    黑客攻防技术宝典-反病毒篇笔记(三)
    jaegeropentracing的Java-client完整分布式追踪链
    jaegeropentracing的Java-client
    IDEA2018.2版本注册
    Spring整合CXF webservice restful 实例
    带有WS-Security验证的webservice
  • 原文地址:https://www.cnblogs.com/mtime2004/p/9746178.html
Copyright © 2011-2022 走看看