JavaScript-T2

news2024/12/25 12:47:45

JavaScript-T2


前言

本次主要讲解的知识点是:

JavaScript自定义函数

JavaScript系统函数

JavaScript 事件

JavaScript 的常用事件

JavaScript自定义函数

函数就是为了完成程序中的某些特定功能而进行专门定义的一段程序代码
函数包括自定义函数和系统函数
使用函数可以实现特定的功能,在使用函数前必须对函数进行定义,代码放置在 <script></script> 标签之间。

语法规则:

使用 function 关键字。function 后是函数名,JavaScript 中的函数不必说明返回值的类型。 函数的命名规则与变量名的命名规则相同。 函数名后的 () 可以包含若干参数,也可以选择不带任何参数。 最后是一对 {},包含具体实现程序中的某些特定功能的若干语句或脚本代码

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>什么是自定义函数?</title>
</head>

<body>
    <script>
        // function
        // 自定义的一个叫做【eat】的函数,这里函数需要添加一个()用于传递参数,{}属于作用域。
        function eat() {
            // document.write("吃:蒸羊羔、蒸鹿儿、烧花鸡烧花鸭烧子鹅~");
            console.log("李元霸·使得一手大锤·擂鼓瓮金锤");
            alert("坐下宝马:");
            console.log("一字没角板肋赖麒麟");
        }
        // 如何调用函数
        // 最直接的调用,在浏览器加载的时候直接使用script中的函数即可。被动触发
        // eat();
        // 主动触发
        // 判断数字大小的函数
        function maxValue(x, y) {
            result = 0;
            if (x >= y) {
                result = x;
            } else {
                result = y;
            }
            alert(result);
            return result;
        }
    </script>
    <hr/>
    <!-- 通过单击事件触发 -->
    <button onclick="eat()">主动触发eat()函数事件</button>
    <hr/>
    <button onclick="console.log(maxValue(5,6))">最大数值</button>
</body>

</html>

状态1

状态2

判断大小:

基础计算

parseInt函数将字符串转换为整数。它从字符串的开头开始解析,在第一个非整数位置停止解析并返回前面读到的所有整数
如果字符串不是以整数开头,将返回NaN(Not a Number:非数字值)

parseFloat()函数和parseInt()函数类似,只不过它是返回一个浮点数

isNaN() 函数用于判断参数是否是NaN(不是数字)。如果是 NaN, 那么 isNaN 函数返回 true ,否则返回 false

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>

<body>
    <!-- 通过按钮事件,修改input中的值 -->
    <p>
        <!-- 一个输入框,默认值是1,我们通过id进行其DOM操作 -->
        <input type="text" id="addValue" value="1" />
    </p>
    <p>
        <!-- 触发增加按钮以及减少按钮。 -->
        <button onclick="add()">增加值</button>
        <button onclick="sub()">减少值</button>
    </p>
    <script>
        function add() {
            // 通过document.getElementById来获取【addValue】,属性是value所以我们直接.value
            var result = document.getElementById("addValue").value;
            // result是获取到的input输入框的值,我们给其+1后重新赋值给咱们这个value
            // 有一个get和一个set,获取值的时候是get。赋值的时候是set
            document.getElementById("addValue").value = parseInt(result) + 1;
        }

        function sub() {
            var result = document.getElementById("addValue").value;
            document.getElementById("addValue").value = parseInt(result) - 1;
        }
    </script>
</body>

</html>

数值类型判断

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>

<body>
    <script>
        // var str = "a123@999a66a77";
        // console.log("格式化后的值:" + parseInt(str));
        // var float_pi = "-3.1415926a5358";
        // console.log("float浮点数的类型被格式化:" + parseFloat(float_pi));
        var num = 66666.666;
        if (isNaN(num)) {
            console.log("不是数字:" + num);
        } else {
            console.log("是数字:" + num);
        }
    </script>
</body>

</html>

字符串计算

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>字符串表达式计算</title>
</head>

<body>
    <p>
        <input type="text" id="nums" placeholder="输入计算表达式" />
    </p>
    <p>
        <button onclick="calc()">计算</button>
    </p>
    <p>
        <input type="text" id="show" placeholder="结果显示" readonly/>
    </p>
    <script>
        function calc() {
            // 获取id为nums的input输入框的value
            // 先获取计算的表达式
            var info = document.getElementById("nums").value;
            //进行赋值与计算·计算的是在nums中获取的字符串
            document.getElementById("show").value = eval(info);
        }
    </script>
</body>

</html>

计算器

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>字符串表达式计算</title>
</head>

<body>
    <input type="text" id="x" placeholder="x" />
    <select id="opt">
            <option value="+">+</option>
            <option value="-">-</option>
            <option value="*">*</option>
            <option value="/">/</option>
        </select>
    <input type="text" id="y" placeholder="y" />
    <button onclick="calc()">计算</button>
    <p>
        <input type="text" id="show" placeholder="结果显示" readonly/>
    </p>
    <script>
        function calc() {
            // 获取id为nums的input输入框的value
            var x = document.getElementById("x").value;
            var opt = document.getElementById("opt").value;
            var y = document.getElementById("y").value;
            //进行赋值与计算·计算的是在nums中获取的字符串
            document.getElementById("show").value = eval(x + opt + y);
        }
    </script>
</body>

</html>

属性修改

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>js实践触发</title>
</head>

<body>
    <h1 onclick="UpdateColor(this)">祝愿·咱们2111班的男孩子都能找到自己合适的工作,祝愿女孩子都能知道自己心仪的伴侣。</h1>
    <script>
        function UpdateColor(o) {
            // this代表将元素自身传递到函数中
            var _this = o;
            console.log(_this);
            console.log("-------------------------------------");
            // 这里由于重新构建了UI,故而前后两个输出结果是相同的
            o.style.color = "skyblue"; //set操作,修改
            o.style.backgroundColor = "pink"; //背景颜色修改
            console.log(o);
        }
    </script>
</body>

</html>

JavaScript 是基于对象、采用事件驱动的脚本语言
事件:用户使用鼠标或键盘在浏览器窗口或页面元素上执行的操作
事件源:产生事件的元素
事件处理程序:对事件进行处理的程序或函数
事件驱动:将一段程序代码与某个事件源上发生的事件进行绑定,当触发此事件,浏览器就会自动执行与之绑定的程序代码

onChange事件

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>通过select下拉菜单修改背景颜色</title>
</head>

<body id="show">
    <select id="ChangeColor" onchange="updateColor()">
        <option value="skyblue">天蓝色</option>
        <option value="red">红色</option>
        <option value="pink" selected>粉色</option>
        <option value="yellow">黄色</option>
        <option value="#CE9178">土色</option>
    </select>
    <script>
        // 全局中先加载一遍
        updateColor();

        function updateColor() {
            var color = document.getElementById("ChangeColor").value;
            document.getElementById("show").style.backgroundColor = color;
        }
    </script>
</body>

</html>

鼠标移入移出事件

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>鼠标移入移除实践</title>
</head>

<body>
    <style>
        #show {
            width: 600px;
            height: 400px;
            background-color: pink;
        }
    </style>
    <div id="show" onmousemove="come_in()" onmouseout="GetOut()"></div>
    <script>
        function come_in() {
            document.getElementById("show").innerHTML = "<h1>我是移入鼠标状态</h1>";
            document.getElementById("show").style.backgroundColor = "skyblue";
        }

        function GetOut() {
            document.getElementById("show").innerHTML = "<h1>我是移出鼠标状态</h1>";
            document.getElementById("show").style.backgroundColor = "pink";
        }
    </script>
</body>

</html>

失去焦点

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>失去焦点事件</title>
</head>

<body>
    <p>
        <input type="password" id="pwd" onblur="pwdLength()" placeholder="请输入密码" />
    </p>
    <script>
        function pwdLength() {
            var result = document.getElementById("pwd").value;
            if (result.length < 6) {
                console.log("密码长度小于6位,不安全。");
            } else {
                console.log("密码通过校验。");
            }
        }
    </script>
</body>

</html>

onSubmit事件

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>submit事件</title>
</head>

<body>
    <form action="#" method="get" onsubmit="return Test()">
        <p>
            <input type="text" name="userName" placeholder="请输入账号" id="userName" />
        </p>
        <p>
            <input type="submit" value="提交">
        </p>
    </form>
    <script>
        function Test() {
            var result = document.getElementById("userName").value;
            if (result == "" || result.length < 6) {
                console.log("验证失败");
                return false;
            } else {
                console.log("验证成功");
                return true;
            }
        }
    </script>
</body>

</html>

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/66951.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Akka 学习(二)第一个入门程序

目录一 sbt 介绍1.1 Sbt1.2 下载安装1.3 sbt的特点1.4 Idea 配置Sbt开发工具二 构建定义2.1 指定版本2.2 build.sbt 设置三 代码实现3.1 Java版本3.2 Scala版本3.3 对比一 sbt 介绍 1.1 Sbt sbt 是为 Scala 和 Java 项目构建的。它是93.6%的 Scala 开发人员的首选构建工具&am…

2000-2021年各省GDP包括名义GDP、实际GDP、GDP平减指数(以2000年为基期)

全国31省市GDP平减指数(2000-2021年)及计算步骤 1、时间&#xff1a;2000-2021年 2、范围&#xff1a;31省 3、数据包括&#xff1a;2000-2021年各省市GDP平减指数&#xff0c;以2000年为基期&#xff0c;包括数据来源、计算方法、公式等。 4、计算步骤&#xff1a; 第一步…

物联卡采购注意要点有哪些

在这个万物互联的时代&#xff0c;针对于企业设备联网的物联卡就显得格外重要了&#xff0c;而共享单车&#xff0c;移动支付&#xff0c;智慧城市&#xff0c;自动售卖机等企业采购物联卡会面临着各种问题&#xff0c;低价陷阱&#xff0c;流量虚假&#xff0c;管理混乱&#…

sealos issue #2157 debug 思路流程记录

sealos issues#2157 debug思路流程前言分析issue剖析源码解决方案总结前言 这个项目蛮有意思的&#xff0c;sealos 是以 kubernetes 为内核的云操作系统发行版。 boss上看到 -> 沟通 -> 解决某个issue直接offer -> 舒服 本文记录解决 issue 的思路 分析issue BUG…

Linux系统常用的工具

1.1 Vscode编辑器 从官网下载 ubuntu 版本&#xff0c;官网地址&#xff1a;https://code.visualstudio.com/。下载xxx.deb的包。 或者使用指令下载&#xff1a;wget https://az764295.vo.msecnd.net/stable/6261075646f055b99068d3688932416f2346dd3b/code_1.73.1-1667967334…

基于Intel Lake-UP3平台为半导体与集成电路测试设备提供优异计算性能

为什么半导体和IC测试设备需要升级&#xff1f; 随着众多新的高性能应用的需求不断增加&#xff0c;信迈旨在为半导体集成电路测试设备领域的客户提供更好的方案。半导体和集成电路&#xff08;IC&#xff09;测试设备设计用于在一台测试机上同时对不同线路的数百个集成电路…

How Can We Know What Language Models Know?

Abstract 最近的工作通过让语言模型&#xff08;LM&#xff09;填补诸如“奥巴马是一个职业”之类的提示的空白&#xff0c;提出了一个有趣的结果&#xff0c;以检查语言模型&#xff08;LM&#xff09;中包含的知识。这些提示通常是手动创建的&#xff0c;而且很可能不是最佳…

Linux进程通信之进程信号

一、信号的概念&#xff1a; 信号机制是Linux最基本的通讯机制&#xff0c;它可以用来向一个或者多个进程发送异步事件信息&#xff0c;传送少量信息。信号是一个软件中断&#xff0c;并且是一个“软中断”&#xff08;只是告诉有这样一个信号&#xff0c;但这个信号具体如何进…

Redis6入门到实战------思维导图+章节目录

Redis学习大纲 思维导图 思维导图 Redis6入门到实战------1、NoSQL数据库简介 地址&#xff1a; Redis6入门到实战------2、Redis6概述和安装 地址&#xff1a; Redis6入门到实战------3、常用五大数据类型 地址&#xff1a; Redis6入门到实战------4、Redis6配置文件详解…

Stack Overflow 临时禁用 ChatGPT 生成内容,网友:人类和AI快打起来!

如果有一天我们查询到的「知识」真假难辨&#xff0c;那这就太可怕了。 要问最近 AI 圈哪个模型最火爆&#xff0c;你不得不把 OpenAI 推出的 ChatGPT 排在前面。自从发布以来&#xff0c;这个对话模型可谓是出尽风头&#xff0c;很多人更是对其产生了一百个新玩法&#xff0c;…

Linux系统移植四:Petalinux使用本地sstate-cache加速构建根文件系统

根文件系统简介 根文件系统 rootfs 是Linux内核启动以后挂载(mount)的第一个文件系统&#xff0c;然后从根文件系统中读取初始化脚本&#xff0c;比如rcS&#xff0c;inittab等 根文件系统和Linux内核是分开的&#xff0c;单独的Linux内核是没法正常工作的&#xff0c;必须要…

TPM零知识学习六 —— tpm模拟器安装

本文参考以下链接&#xff1a; TPM模拟器和TPM2-TSS安装_jianming21的博客-CSDN博客_tpm2-tss 可信平台模块TPM&#xff08;Trusted Platform Module&#xff09;介绍及tpm-tools安装使用_jinhuazhe2013的博客-CSDN博客_tpm模块 1. 源码下载 运行以下命令下载源码&#xff1…

设计模式--观察者模式

文章目录前言一、未使用设计模式二、观察者模式1.定义2.组成三、应用场景四、优缺点优缺前言 甲人A&#xff08;产品经理&#xff09;&#xff1a;好啊&#xff0c;你小子&#xff0c;又被我逮到了&#xff0c;很闲是吧&#x1f607;&#xff0c;需求完成了吗&#xff1f; two…

MOSFET 和 IGBT 栅极驱动器电路的基本原理学习笔记(三)同步整流器驱动

同步整流器驱动 1.栅极电荷 2.dv/dt注意事项 MOSFET 同步整流器是接地基准开关的一个特例。这些器件与传统应用所使用的 N 沟道 MOSFET 相同&#xff0c;只是它们被应用到了电源的低电压输出而非整流器二极管中。 它们通常可在非常有限的漏源极电压摆幅下工作&#xff0c;因此…

redis活跃非活跃连接数统计及client list说明

概念说明 活跃连接是指当下正在执行命令的连接&#xff0c;非活跃当然是相对的。 在redis中判断当前连接是否活跃是通过 内置的client list 命令输出中的idle来判断 client list字段说明 (kfzops) [roottest-xxx-01-vm ]# redis-cli -h r-xxxxxxxxxxxx.redis.rds.aliyuncs.…

学生身份标签的识别与风控应用

当前的互联网借贷平台&#xff0c;国家已明确规定不允许向高校学生发放贷款&#xff0c;因此对于小贷、消金等金融机构&#xff0c;在信贷产品业务的风控体系中&#xff0c;有效判断申请用户是否为高校学生是一个非常重要的问题。针对高校学生身份的识别&#xff0c;虽然有多种…

机器学习、深度学习、自然语言处理学习 NLP-RoadMap-996station GitHub鉴赏官

推荐理由&#xff1a; 机器学习、深度学习、自然语言处理学习路线图 及 AI方向学习资源、工具 NLP-RoadMap 持续更新中。以下内容有错误或者不足&#xff0c;欢迎提Issue或者联系我讨论 整理不易&#xff0c;希望点个小星星 ​支持下呀&#xff01; 前言 数理基础 编程基础 机…

RE2:Simple and Effective Text Matching with Richer Alignment Features

原文链接&#xff1a;https://aclanthology.org/P19-1465.pdf 介绍 问题 作者认为之前文本匹配模型中序列对齐部分&#xff0c;过于复杂。只有单个inter-sequence alignment层的模型&#xff0c;常会引入外部信息&#xff08;例如语法特征&#xff09;作为额外输入&#xff0c;…

小游戏与H5游戏对比与梳理

H5游戏是运用了h5技术的响应式网站布局的游戏&#xff0c;它完全实现了网页游戏在手机移动端的无缝衔接。众所周知&#xff0c;H5游戏已盛行了多年&#xff0c;而如今&#xff0c;随着诸多小游戏的推出&#xff0c;小游戏爆款频出&#xff0c;从“跳一跳”到“羊了个羊”&#…

Leetcode---2465.不同的平均值数目

目录题目描述分析题目描述 给你一个下标从 0 开始长度为 偶数 的整数数组 nums 。 只要 nums 不是 空数组&#xff0c;你就重复执行以下步骤&#xff1a; 找到 nums 中的最小值&#xff0c;并删除它。 找到 nums 中的最大值&#xff0c;并删除它。 计算删除两数的平均值。 两…