当前位置: 首页 > news >正文

【JavaScript】拾遗(5.25)

文章目录

  • 1. JavaScript
  • 2.HTML嵌入JS的第一种方式:行间事件
  • 3.HTML嵌入JS的第二种方式:脚本块的方式
  • 4. HTML嵌入JS的第三种方式:外部式(外链式)
  • 5. 局部变量和全局变量
  • 6. 函数
  • 7.事件
  • 8.回调函数
    • 8.1 注册事件
    • 8.2 代码的执行顺序

1. JavaScript

JavaScript是一门脚本语言。(脚本通常以文本(如ASCII)保存,只在被调用时进行解释或编译)
Java不是脚本语言,因为Java的目标程序以class字节码的形式存在。

2.HTML嵌入JS的第一种方式:行间事件

实现一个点击按钮,弹出消息框。
在这里插入图片描述

  • JS是一门事件驱动型语言,依靠事件去驱动,然后执行相对应的程序。
    区别事件和事件句柄
    事件:click
    事件句柄(以HTML标签的属性存在):onclick
  • onclick = "js代码"执行原理
    页面打开后,js代码并不会立即执行,而是将js代码注册到click事件上,当按钮发生click事件后,js代码才会被浏览器执行。
  • JS弹出框消息
    window是Js内置的对象,浏览器对象,该对象有一个方法,alert(“消息”),可以弹出消息。
  • JS可以使用双引号或者单引号
  • JS中的一条语句结束可以使用分号结束,也可以不用。

3.HTML嵌入JS的第二种方式:脚本块的方式

通过标签<script></script>可以将代码块放在任意的位置。但是放的位置不同,Js的被执行的时机也可能不同。
在这里插入图片描述

4. HTML嵌入JS的第三种方式:外部式(外链式)

<script type="text/javascript" src="test.js"></script>

5. 局部变量和全局变量

局部变量:函数的形参是局部变量,使用var关键字在函数体中声明的变量也是局部变量,函数执行结束后,局部变量的内存就释放了。
全局变量:在函数体外声明的变量属于全局变量,另外不使用var关键字声明的变量无论在什么位置都是全局变量,全局变量在浏览器关闭时销毁。

6. 函数

第一种方式:

function 函数名(形式参数列表) {函数体;
}

第二种方式:

函数名 = function (形式参数列表) {函数体;
}

7.事件

https://www.runoob.com/jsref/dom-obj-event.html

8.回调函数

8.1 注册事件

(1)直接在标签中使用事件句柄

<input type="button" value="hello" onclick="sayHello()"/>

sayHello函数注册到按钮上,等待click事件发生之后,该函数被浏览器调用,所以该函数也没称为回调函数。
(回调函数:自己将函数写出来,但是这个函数不被自己调用,等待他人调用)

(2)使用存代码完成注册

<input type="button" value="hello" id="mybtn"/>
<script type="text/javascript">function dosome() {alert("do some");}var btnObj = document.getElementById("mybtn");btnObj.onclick = dosome;
</script>

(3)

<input type="button" value="hello" id="mybtn"/>
<script type="text/javascript">var btnObj = document.getElementById("mybtn");btnObj.onclick = function() { //匿名函数alert("do some");};
</script>

8.2 代码的执行顺序

在这里插入图片描述

http://www.lryc.cn/news/89921.html

相关文章:

  • QMI8658 - 姿态传感器学习笔记 - Ⅲ
  • PHP+vue二手车交易信息网站系统
  • NTM中attr的用法
  • 【python资料】pandas的条件查询
  • 中间件(三)- Kafka(二)
  • DAY01_MySQL基础数据类型navicat使用DDL\DML\DQL语句练习
  • 数据安全复合治理框架和模型解读(0)
  • Java程序设计入门教程--逻辑运算符和位运算符
  • 接口测试简介以及接口测试用例设计思路
  • C++ Qt项目实战:构建高效的代码管理器
  • 【JavaScript 递归】判断两个对象的键值是否完全一致,支持深层次查询,教你玩转JavaScript脚本语言
  • 卷积、相关、匹配滤波、脉冲压缩以及模糊函数
  • C# 栈(Stack)
  • 网络流量监控及流量异常检测
  • 六.热修复
  • 2000万的行数在2023年仍然是 MySQL 表的有效软限制吗?
  • jvm问题排查
  • 【Redis】浅谈Redis-集群(Cluster)
  • Python3实现基于ARIMA模型来预测茅台股票价格趋势
  • 自动化测试selenium环境搭建
  • SaaS系统平台,如何兼顾客户的个性化需求?
  • QDir拼接路径解决各种斜杠问题
  • mycat2主从配置实现读写分离
  • 如何在Centos7中安装Kubernetes
  • Stream强化
  • 第一部分-基础篇-第一章:PSTN与VOIP(下篇)
  • 《汇编语言》- 读书笔记 - 第4章-第一个程序
  • AI工具 ChatGPT-4 vs Google Bard , PostgreSQL 开发者会pick谁?
  • 【网络】基础知识1
  • chatgpt赋能python:Python倒序range的完整指南