第四天 Javascript基础教程

Swift Package Manager (SPM) 创建并集成本地库 Swift Package Manager (SPM) 在macOS 项目中创建并集成的完整步骤 阅读详情

Javascript是一种弱类型脚本语言,弱类型就是声明的时候不用定义变量的类型,脚本语言就是一行一行执行,和C、Java这种编译后执行的语言区分开来。Javascript支持面向对象,除了在浏览器中看到它实现动态页面以外,还有很多应用程序也使用它进行扩展。


Js的引入

有两种方式在html文件种引入Js脚本:

  • 直接写在html文件中,用script标签扩起来
  <script type="text/javascript">
      //这里写代码
  </script>

注意:这里的type可以不写,浏览器默认解析为js。

  • 外部引用(推荐)
<script src="myjs.js"></script>

注意:<script>标签可以放在<head>或<body>标签内的任意的地方,这与css的引入不同,css外联样式和外部样式只能写在<head>中。


Js输出

<script type="text/javascript">
    alert("哈哈");//警告框提示
    document.write("<h1>嘿嘿</h1>");//写入文档
    console.log(1+90);//控制台打印,Chrome按f12调出控制台
</script>

Js变量

var i;
i = 1;
console.log("i=" + i);
//typeof判断数据类型
console.log(typeof i);
//变量未赋值时类型为undefined
//变量可以重复声明,但不推荐这样做
//变量可以被赋不同类型的值,但同样不推荐这样做

parseInt:

console.info(parseInt("0x20"));
//parseInt  转成int
//parseFloat 转成float
//可传入整形数、浮点数、十六进制等,以及它们的字符串形式
//Js中"123"==123是成立的
//"212abd3"这种会只转到遇到的第一个字母前为止,结果是212
//"dsa"这种形式会返回NaN,not a number
//parseFloat传入十六进制的字符串形式"0x21"会只读到0为止

isNaN:

console.info(isNaN("123"));//是数字返回false,不是数字返回true
//isNaN = not is a number

Js语法

条件判断:

//if语句
var condition;
if(condition) {
    //do something
} else if(condition) {
    //do something
} else {
    //do something
}
//注意:undefined和NaN也被判断为false

//switch语句
var avalue = 1;
switch(avalue) {
    case 1:
    //do something
    break;
    case 2:
    //do something
    break;
    default:
    //do something
}

//三目运算符
var i = condition ? 1 : 0; //condition成立i为1,不成立i为0

循环语句:

//while循环
var condition;
while(condition){
    //do something
}

//for循环
for(var i = 1;i<3;i++){ 
    //do something                  
}

//for-each循环
var a=[1,2,3,4];
for(var j in a){
    console.log(a[j]);
}//注意这个j是下标,不是值,与java不同

练习-九九乘法表:

自己写,别看我的…

for(var i = 1; i < 10; i++) {
    for(var j = 1; j <= i; j++) {
        document.write(i + "x" + j + "=" + i * j + " ");
    }
    document.write("<br/>");
}

Js函数

function getSum(num1,num2){
    var res = num1+num2;
    console.log(res);
    return res;
}
//无需返回值类型声明
//无返回值时return可以不写

Js事件:

单击事件:onclick

<input type="button" value="点击" onclick="getSum(100,200)"/>

表单提交事件:onsubmit (返回false时不提交表单,记得加return)
内容改变事件:onchange (内容改变且输入框失去焦点时触发)

<form action="index.html" onsubmit="return check()">
    用户名:<input id="username" type="text" name="username" placeholder="长度不超过6位" onchange="showContent()"/>
    <input type="submit" value="提交" />
</form>
function check() {
    var username = document.getElementById("username").value;
    //根据id属性获取标签的value属性的值
    if(username.length>6) {
        alert("不能超过6位");
        return false;//提交失败页面不跳转
    } else {
        alert("提交成功");
        return true;//提交成功页面跳转
        }
}

function showContent(){
    var username = document.getElementById("username").value;
    alert(username);
}

Js文档操作

var nametag = document.getElementById("username");
//获取id属性为username的标签
nametag.value;
//得到这个标签value属性的值
nametag.innerHtml;
//得到这个标签扩起来的html
nametag.innerText;
//得到这个标签扩起来的纯文本
//可以给它们赋值来更改文档中的值

作业-Js表单验证:

做一个下面这样的表单,输入错误有醒目红色文字提示,点击注册后输入不正确不能提交。
练习题目
输入错误提示:
错误

本喵写的,可能不是很好,建议先不要看,自己写了再对照:

<h3>用户注册</h3>
        <form action="succ.html" onsubmit="return checksubmit()">
            <label>用&nbsp;&nbsp;户&nbsp;&nbsp;名:</label><input type="text" id="username" name="username" placeholder="4-6位之间" onfocusout="checkname()" /><br>
            <label>设置密码:</label><input type="password" id="userpass" name="userpass" placeholder="只能输入数字" onfocusout="checkpass()" /><br>
            <label>确认密码:</label><input type="password" id="userpassagain" name="userpassagain" placeholder="和密码相同" onfocusout="checkpassagain()" /><br>
            <label>手&nbsp;&nbsp;机&nbsp;&nbsp;号:</label><input type="tel" id="phone" name="phone" placeholder="只能输入数字" onfocusout="checkphone()" /><br>
            <input type="submit" value="立即注册" /><label id="p1"></label>
        </form>
        <script type="text/javascript">
            function checknull(name,id) {
                if(document.getElementById(id).value == "") {
                    document.getElementById("p1").innerText = name+"不能为空";
                    return false;
                } else {
                    document.getElementById("p1").innerText = "";
                    return true;
                }
            }

            function checkname() {
                var name = document.getElementById("username").value;
                if(!checknull("用户名","username")){
                    return false;
                }
                if(name.length < 4 || name.length > 6) {
                    document.getElementById("p1").innerText = "用户名长度是4到6位";
                    return false;
                } else {
                    document.getElementById("p1").innerText = "";
                    return true;
                }
            }
            function checkpass(){
                var pass = document.getElementById("userpass").value;
                if(!checknull("密码","userpass")){
                    return false;
                }
                if(isNaN(pass)) {
                    document.getElementById("p1").innerText = "密码只能输入数字";
                    return false;
                } else {
                    document.getElementById("p1").innerText = "";
                    return true;
                }
            }
            function checkphone() {
                var phone = document.getElementById("phone").value;
                if(!checknull("手机号","phone")){
                    return false;
                }
                if(isNaN(phone)) {
                    document.getElementById("p1").innerText = "手机号只能输入数字";
                    return false;
                } else {
                    document.getElementById("p1").innerText = "";
                    return true;
                }
            }

            function checkpassagain() {
                var pass = document.getElementById("userpass").value;
                var passagain = document.getElementById("userpassagain").value;
                if(!checknull("确认密码","userpassagain")){
                    return false;
                }
                if(pass != passagain) {
                    document.getElementById("p1").innerText = "两次密码输入不一致";
                    return false;
                } else {
                    document.getElementById("p1").innerText = "";
                    return true;
                }
            }

            function checksubmit() {
                if(checkname() && checkpass() && checkpassagain() && checkphone()) {
                    return true;
                }
                return false;
            }
        </script>
自建 HTML获取腾讯六宫格点选图片验证码素材,实现刷新批量获取图片方便训练 通过自建 HTML 页面,可以方便地获取腾讯六宫格二维码素材,不仅过程简单,而且可以灵活配置各种参数。希望这篇文章能帮助到需要相关素材的小伙伴。如果你有其他问题或者更好的方法,欢迎留言交流! 阅读详情

相关推荐

Kubernetes集群资源优化实战:Volcano调度器如何帮你省下30%GPU算力

本文详细介绍了如何通过Volcano调度器的Binpack策略优化Kubernetes集群中的GPU资源利用率,解决AI模型训练中的资源碎片化问题。通过实战配置和调优指南,帮助用户提升30%的GPU算力利用率,显著降低任务等待时间和硬件成本。

weixin_30832143的博客 506

Java基础练习选择题(1)答案

JDK是( )   A、一种全新的程序语言   B、一种程序开发辅助工具   C、一种由Java写成的,并支持Java Applet的浏览器   D、一种游戏软件  2、Java语言中下面哪个可以用作正确的变量名称( )   A、3D       B、name      C、extends     D、implements 3、构造函数何时被调用( )      A

coding1994的博客 7万+

极简JEPA世界模型实战:低门槛复现LeWorldModel,CPU可跑

这次我们来看一个能让普通开发者真正上手跑起来的“世界模型”项目。如果你对Yann LeCun提出的JEPA(联合嵌入预测架构)框架感兴趣,但又苦于Meta官方实现过于庞大复杂,那么这个GitHub上4k star的项目就是为你准备的。它用极简的PyTorch代码(核心文件仅160-278行)完整复刻了包括LeWorldModel在内的五个JEPA核心变体,最大的亮点是: 门槛极低,普通笔记本甚至CPU就能跑,显存占用友好,非常适合学习和原理验证。 这个项目名为 keon/jepa ,完全开源。它剥离了工业级

weixin_29031161的博客 421

Web前端开发精品课HTML CSS JavaScript基础教程第十六章课后编程题答案

编程题: 定义一个列表,每一个列表项都是一个超链接,并且要求去除列表项符号以及超链接下划线,设置超链接文本颜色为粉红色,并且点击某一个列表项会以新窗口的形式打开。 用VS2013新建ASP.NET空网站,添加新项,建立HTML文件,向其加入以下代码: ul{list-style-type:none;}/*去除列表项符号*/ a{

全村的希望的博客 3597

USB3.0一致性测试方案

为各测试项目具体测试结果包括脉冲串突发时间、脉冲串重复时间、时钟周期以及眼图等完整USB3.0测试项目,工程师可以看到各项测试的具体结果方便观察。RIGOL 提供了一套完善的工具,包括数字示波器、专业的测试夹具以及全自动一致性测试软件,使得USB 3.0设备设计人员能够高效精确地进行信号捕捉、测试与分析。报告第二部分测试摘要,在此可以看到USB3.0测试所有测试项目,并且可以观看到测试是否正常,可以帮助工程师更好的判断测试结果。,以简化下载、存储以及对于多媒体的大量内容的共享。

2409_87378937的博客 2526

Tribon Vitesse开发教程(一)

Tribon Vitesse简介 Tribon Vitesse是Tribon提供给Python编程语言的编程接口,它是一系列的API。使用Python的语法调用这些API,结合Python语言自身的语法生成的程序叫做Vitesse程序。Vitesse是法语“速度”的意思,读作“为戴斯”。使用Tribon Vitesse可以直接访问Tribon产品信息模型和使用Tribon应用程序的功能,以控制设计

forevermemory的专栏 2588

JavaScript基础教程新手入门必看

对前端稍微有点了解的初学者都知道,JavaScript是必不可少的工具。毫不夸张的说,大部分网页都使用了JavaScript,想要成为一个优秀的前端工程师,做出漂亮令用户满意的网页,熟练掌握JavaScript是一个必备技能。本文为新手整理了一篇JavaScript基础教程入门指南,希望可以帮助编程小白可以更加轻松的掌握JavaScript。 零基础新手要开始JavaScript的学习,第一步就...

jinmu520的博客 1609

用R来做一个临床研究亚组分析的森林图

在编程语言里R语言最强大的功能是做图功能,我们知道在做Meta分析的时候会需要做森林图,实际上我们在很多临床研究中也经常看到森林图,主要是亚组分析的森林图,比如下面这篇文章里的一个森林图: 今天就教教大家怎么用R语言来做上面这种亚组分析的森林图 1. 在Excel里编辑好数据,按照下面的格式整理,保存为csv格式 2. 下载安装R跟Rstudio R软件的下载地址: https://mirrors.tuna.tsinghua.edu.cn/CRAN/ Rstudio下

Mrrunsen的博客 5340

JS第四天总结

JS第四天总结 一、函数的定义: 函数也可以叫方法。 对于反复使用的功能代码,对其封装成一个独立的模块,这种功能代码块就是函数。 或者说简单来说就是将一段公共的代码进行封装,给它起个名字叫"函数"。说通俗点儿函数就是一个功能,就是一个方便的工具。 二、函数的好处: 重复使用----空调不可能是一次性的,可以重复使用​ 忽略细节----会用空调不一定会生产空调​ 选择执行----夏冬使用,春秋不用 三、函数的特点: 函数可以一次定义,多次使用。 方便代码管理。 便于控制程序的执行时间。 函数,可以将常用的功能

qq_42061122的博客 138

关于IBV_WR_RDMA_WRITE_WITH_IMM的理解

对于IBV_WC_RECV_RDMA_WITH_IMM的描述是这样的,也就是说并不需要sge,所以下发的sge,可以是NULL,个数可以是0。(1)需要下发post_recv,但是下发是post_recv当中的sge的地址可以是空,sge个数可以是0。伪代码,实际的rkey和addr已经通过socket交换。并且poll_cq时,有返回,在这篇文章当中对于poll_cq时,主要区别点有两个,这个是对于接收端而言。(2)可以带即时数据,

qq_38158479的博客 2418

攻克低照度检测难题:YOLOv11主干网络增强新方案PE-YOLO详解

编码器部分# 解码器部分self.dec_conv2 = nn.Conv2d(512, 128, 3, padding=1) # 跳跃连接self.dec_conv3 = nn.Conv2d(256, 64, 3, padding=1) # 跳跃连接self.dec_conv4 = nn.Conv2d(128, 32, 3, padding=1) # 跳跃连接# 编码路径# 解码路径(带跳跃连接)

FJN110的博客 105

Node.js 基础教程

Node.js 是现代 Web 开发不可或缺的技术。通过持续学习和实践,你将能够构建高效、可扩展的应用程序。

wscfan的博客 1077

人群仿真软件:AnyLogic_(12).AnyLogic高级功能应用

在AnyLogic中,自定义行人行为是通过编写Java代码来实现的。行人行为的自定义可以包括行走路径的选择、速度变化、交互行为等。这使得仿真模型更加灵活和真实。

kkchenjj的博客 1060

木马编程入门_JavaScript基础教程新手入门必看

对前端稍微有点了解的初学者都知道,JavaScript是必不可少的工具。毫不夸张的说,大部分网页都使用了JavaScript,想要成为一个优秀的前端工程师,做出漂亮令用户满意的网页,熟练掌握JavaScript是一个必备技能。本文为新手整理了一篇JavaScript基础教程入门指南,希望可以帮助编程小白可以更加轻松的掌握JavaScript。零基础新手要开始JavaScript的学习,第一步就是要...

weixin_39648824的博客 863

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

JavaScript 自动化软件:AutoX.js

JavaScript 自动化软件:AutoX.js

freeking101的博客 7万+

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

JavaScript 基础教程

JavaScript 基础教程 今天时间比较充裕,考虑到最近好久没有出文章了.有没什么特别的研究,很抱歉,最近也是觉得很没新意.不过,我想本文还是有点参考价值的,因为至少,对那些没有接触过JavaScirpt或接触的不多的朋友,还是有一定帮助的.说真的,记得大一的时候,一个同学用JavaScirpt写的一个禁用鼠标左键,我都觉得很了不起,而且拿来钓MM也是很好的选择,所以,

何双江(yarshray)的专栏 1916

廖雪峰Python教程[完整版]

廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白

黑马JS教程笔记(JavaScript教程)——JS基础

<head><title>JavaScript练习</title></head><body><script></script></body>

Dontla的博客 2653

Node.js 基础教程指南

Node.js 基础教程指南 项目介绍 本项目是基于Node.js的基础教程,由mschwarzmueller开发,旨在帮助初学者快速掌握Node.js的基本概念和使用方法。教程内容涵盖了Node.js的核心模块、事件处理、文件系统操作等基础知识,适合所有对Node.js感兴趣的开发者。 项目快速启动 环境准备 安装Node.js:请访问Node.js官方网站下载并安装最新版本的Node.js。...

gitblog_00661的博客 306

javascript基础教程(1)

在看《JavaScript基础教程(第9版)》,敲敲笔记,另外补充补充自己的理解,看两三章就写成一篇。脚本放在哪里?建议放在之前,由于js是单线程加载执行,如果放在之间,那么可能在加载执行js的时候会出现页面短暂空白的现象。补充说明一下,css最好放在之间,这样能避免页面的样式没有加载完成,出现页面短暂混乱的现象。PS:这个和浏览器渲染执行机制有关,上面只是大概说说,还有更好地解释,我现在还不知道,

kang921022的博客 734

js第四天

就是代表计算错误,如果不同类型之间加减就会出现NaN,对NaN做加减也会出现它,注意这里可以与后面数据类型转换一起看。

ling__i的博客 1006

Node.js 基础教程开源项目介绍

Node.js 基础教程开源项目介绍 1. 项目基础介绍及主要编程语言 本项目是由开源技术专家 Michael Schwarzmueller 创建的 Node.js 基础教程系列,旨在帮助初学者和中级开发者更好地理解和掌握 Node.js 编程。该项目的源代码托管在 GitHub 上,使用 MIT 许可证发布,任何人都可以自由地使用和修改。项目主要使用 JavaScript 语言编写,同时包含了 ...

gitblog_00995的博客 494

javascript入门书籍推荐《javascript基础教程》

在这个函数中,我们为页面上的每个按钮设置了onclick 处理程序。因为在HTML中设置了id属性和value属性,所以可以使用getElementById() 设置事件处理程序。如果有value属性,就可以使用getElementById() 调用,那么就不必设置id属性。 3. function saySomething() { 这一行开始saySomething()函数 4. switch(this.id) { this 对象的id用作switch() 的参数。这个值将决定执行以下case语句

蜗牛学习笔记 3773

JS基础教程

运算符也叫操作符,通过运算符可以对一个或多个值进行运算例如:typeof就是运算符,可以来获得一个值的类型。typeof a;可以帮助我们获得a的类型 它会将该值的类型以字符串的形式返回。

qq_32907491的博客 1535

JavaScript基础教程(第8版).pdf

JavaScript基础教程(第8版).pdf

u011200527的博客 1957

【JavaScript基础教程】

什么是JavaScriptJavaScript是一种功能强大的编程语言,简称JS用于开发交互式的web页面和给页面添加动态效果JavaScript不仅可以运行在客户端,还可以运行在服务器端,比如node.js2.Java与JavaScript的关系比较经典的回答有Java和JavaScript的关系就像雷锋和雷峰塔,老婆和老婆饼,精卫和汪精卫的关系。

m0_72979912的博客 648

JavaScript基础教程

JavaScript介绍 JavaScript 简称“JS”,是一种脚本编程语言,它灵活轻巧,兼顾函数式编程和面向对象编程,是 Web 前端开发的唯一选择。JavaScript 还有很多框架,比如 jQuery、AngularJS、React 等,它们这是学习 JavaScript 的重要内容。 JavaScript 最初只能运行于浏览器环境,用于 Web 前端开发,后来有“好事”的程序员将 JavaScript 从浏览器中分离出来,搞了一套独立的运行环境,所以现在的 JavaScript 也能用于网站后

我的博客 1127
上一篇: 第三天 DIV+CSS布局实例
下一篇: 第五天 Javascript面向对象和一些常用对象
风沐流萤
博客等级 码龄14年 31粉丝 11原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值