HTML基础三-JS
一、JAVA Script
1.1 基本用法
HTML中的三把利器的JS 又称为JavaScript,看着好像和Java有点联系,实际上他和java半毛钱关系都没有,JavaScript和我们学习的Python、Go、Java、C++等,都是一种独立的语言,Python的解释器有Python2.7、Python3.x,浏览器具有解释JavaScript的功能,所以它才是HTML的三把利器之一。
在HTML中可以将JavaScript/JS的代码写在head中,被script标签所包裹,当浏览器解释HTML时,遇到style标签时,按照CSS规则解释,遇到Script标签时,按照JavaScript的语法规则解释。
引入JavaScript代码,类似于Python的import
<script src="public.js" type="text/javascript"></script>
head中引入JS与body中引入JS区别
html代码从上而下解析,如果在head中引入JS,影响页面打开的速度,存在风险,所以通常放在htmlbody的最下方,这样页面内容先展示,最后在加载JS。注:写在最下面要有底线,写在body内部的最底下。
注释
单行注释通过 // 多行通过 /* */
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>摩羯座</title>
</head>
<body>
<div>
<input type="button" onclick="demo()" value="登录">
</div>
<script>
function demo() {
console.log('123123') // 等同于python里的input
alert('提示框!!!') // 提示框
flag = confirm('确认要登录吗?') //确认框
console.log(flag)
}
</script>
</body>
</html>
1、点击【登录】

出现弹窗

2、点击【确定】

1.2 html引入JS文件
可以在<header>或者<body>中引入

1、创建js文件:demo.js
function demo() {
console.log('123123') // 等同于python里的input
alert('提示框!!!') // 提示框
flag = confirm('确认要登录吗?') //确认框
console.log(flag)
}
2、在html里 <body>标签-导入js文件
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<div>
<input type="button" onclick="demo()" value="登录">
</div>
<script src="demo.js"></script>
</body>
</html>
1.3 写一个登录接口
1、定义好登录用户名、密码
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<div>
<input type="text" placeholder="请输入用户名" id="username">
<input type="password" placeholder="请输入密码" id="password">
<input type="button" onclick="login()" value="登录">
</div>
<script>
function login() {
var username = 'wdc';
var password = '123456';
var user = document.getElementById('username').value;
var passwd = document.getElementById('password').value;
console.log(user);
console.log(passwd);
/*
* 1、获取用户名和密码的value
* 2、if 进行判断
* */
}
</script>
</body>
</html>

2、判断用户名、密码是否验证通过
js的判断语句
if (username == user){ console.log('用户名验证通过')}else { alert('你的用户名不对')}
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<div>
<input type="text" placeholder="请输入用户名" id="username">
<input type="password" placeholder="请输入密码" id="password">
<input type="button" onclick="login()" value="登录">
</div>
<script>
function login() {
var username = 'wdc';
var password = '123456';
var user = document.getElementById('username').value;
var passwd = document.getElementById('password').value;
console.log('username-->'+user);
console.log('password-->'+passwd);
// if a==b:
// xxx
if (username == user){
console.log('用户名验证通过')
}else {
alert('你的用户名不对')
}
/*
* 1、获取用户名和密码的value
* 2、if 进行判断
* */
}
</script>
</body>
</html>


3、if语句,and的用法 要加“&&”
if (username == user && password==passwd ){
console.log('登录成功')
}else {
alert('你的用户名不对')
}


4、if语句,else if用法
if (username == user && password==passwd ){
console.log('登录成功')
}else if (username != user) {
console.log('用户名有错误!')
}else if(password != passwd){
console.log('密码错误!')
}else {
console.log('都错了')
}


5、for 循环
function test() {
var l = ['奔驰','宝马','奥迪','凯迪拉克']; //生命数组
// var l1 = new Array(1,2,3,4); //第二种声明方式
for (var i in l){
console.log(l[i])
}
或者
function test() {
var l = ['奔驰','宝马','奥迪','凯迪拉克']; //生命数组
// var l1 = new Array(1,2,3,4); //第二种声明方式
for (var i=0;i<l.length;i++){
console.log(l[i])
}

6、字典 循环
function test() {
var m = {"name": "wdc", "age": 18};
for (var k in m) {
console.log(m[k])
}
}
// 不能用下方这种方式循环字典
for (var i=0;i<l.length;i++) {
console.log(l[i])
}

7、字符串 循环
function test() {
var s = '测试循环字符串';
for (var i in s) {
console.log(s[i])
}
}
或者
function test() {
var s = '测试循环字符串';
for (var i = 0; i < s.length; i++) {
console.log(s[i])
}
}

1.4 匿名函数
<body>
<input type="button" value="匿名函数测试" id="i1">
<script>
element = document.getElementById('i1');
element.onclick = function () {
console.log('测试匿名函数')
}
</script>
</body>

1.5 作用域
<body>
<input type="button" value="作用域" onclick="test_var()">
<script>
function test_var() {
var name = 'wdc'
console.log(name)
}
</script>
</body>

HTML基础三-JS的更多相关文章
- 前端总结·基础篇·JS(三)arguments、callee、call、apply、bind及函数封装和构造函数
前端总结系列 前端总结·基础篇·CSS(一)布局 前端总结·基础篇·CSS(二)视觉 前端总结·基础篇·CSS(三)补充 前端总结·基础篇·JS(一)原型.原型链.构造函数和字符串(String) 前 ...
- Bootstrap <基础三十二>模态框(Modal)插件
模态框(Modal)是覆盖在父窗体上的子窗体.通常,目的是显示来自一个单独的源的内容,可以在不离开父窗体的情况下有一些互动.子窗体可提供信息.交互等. 如果您想要单独引用该插件的功能,那么您需要引用 ...
- Bootstrap <基础三十一>插件概览
在前面布局组件中所讨论到的组件仅仅是个开始.Bootstrap 自带 12 种 jQuery 插件,扩展了功能,可以给站点添加更多的互动.即使不是一名高级的 JavaScript 开发人员,也可以着手 ...
- Bootstrap <基础三十>Well
Well 是一种会引起内容凹陷显示或插图效果的容器 <div>.为了创建 Well,只需要简单地把内容放在带有 class .well 的 <div> 中即可.下面的实例演示了 ...
- Bootstrap<基础三> 排版
Bootstrap 使用 Helvetica Neue. Helvetica. Arial 和 sans-serif 作为其默认的字体栈. 使用 Bootstrap 的排版特性,您可以创建标题.段落. ...
- 前端总结·基础篇·JS(一)五大数据类型之字符串(String)
前端总结系列 前端总结·基础篇·CSS(一)布局 前端总结·基础篇·CSS(二)视觉 前端总结·基础篇·CSS(二)补充 前端总结·基础篇·JS(一)五大数据类型之字符串(String) 目录 这是& ...
- 前端总结·基础篇·JS(二)数组深拷贝、去重以及字符串反序和数组(Array)
目录 这是<前端总结·基础篇·JS>系列的第二篇,主要总结一下JS数组的使用.技巧以及常用方法. 一.数组使用 1.1 定义数组 1.2 使用数组 1.3 类型检测 二.常用技巧 2.1 ...
- 前端总结·基础篇·JS(四)异步请求及跨域方案
前端总结系列 前端总结·基础篇·CSS(一)布局 前端总结·基础篇·CSS(二)视觉 前端总结·基础篇·CSS(三)补充 前端总结·基础篇·JS(一)原型.原型链.构造函数和字符串(String) 前 ...
- 前端总结·基础篇·JS(一)原型、原型链、构造函数和字符串(String)
前端总结系列 前端总结·基础篇·CSS(一)布局 前端总结·基础篇·CSS(二)视觉 前端总结·基础篇·CSS(三)补充 前端总结·基础篇·JS(一)原型.原型链.构造函数和字符串(String) 前 ...
随机推荐
- Windows 配置Apache+CGI
首先还是先在官网下载Apache,版本为Apache 2.4.26 x64,下载64位的地址为:http://www.apachehaus.com/cgi-bin/download.plx 下载完成后 ...
- Python-读取文件内容
读取文件中的内容: with open('data.txt','r') as f: data_list = f.readlines()#每一行是一个字符串 data_list = [i.strip(' ...
- JAVA PTA 7-1 作品评分 (10 分)
全国中小学生Scratch作品大赛拉开了序幕.每个参赛选手可以通过网络直接上传作品.本次比赛人人可做评委.每个网络评委可以通过网络对每一件作品进行打分.评分系统也是请程序高手设计的,能自动去掉一个最高 ...
- C语言语法教程-结构体
2018-09-30 结构体中成员变量地址是连续的,结构体用于描述记录. Create a struct //---------------------------- //struct1.c //创建 ...
- 剑指Offer_Java_顺时针打印矩阵(二维数组)
顺(逆)时针打印矩阵 算法思想: 简单来说,就是不断地收缩矩阵的边界 定义四个变量代表范围,up(初始0).down(初始-行高).left(初始-0).right(初始-列宽), 向右走存入整行的值 ...
- 基于Jquery的进度条插件(实用)
Spin.js 最喜欢这款插件了,动画图片的长度.粗细.速度和角度都可以灵活控制,想要做成什么样都可以. 源码下载 在线演示 Percentage Loader 一款轻量的 jQuery 进 ...
- webapi ClaimsPrincipal使用
参考文档:ClaimsPrincipal Class 个人demo:SwaggerDemoApi 今天看到一段代码懵逼了 var principal = new ClaimsPrincipal(new ...
- Sql与Oracle的差异
/*整理背景201403订单中心数据库迁移(整理Oracle与SQL的差异)整理规则第一句为SQL Server 第二句为Oracle*/--数据类型int integervarchar varcha ...
- .Net Core实战教程(一):Linux下搭建项目
.Net Core实战教程(一):Linux下搭建项目 附言 .net core 1.0的时候就开始关注了,一直没有用于项目.真正用于项目我是2.0开始使用的.这几年也总结出一些经验.最近有空就写出来 ...
- moodle3.7中文语言包
Moodle官方有中文语言包,但是还有没有翻译的,为了提高用户体验,可以将部分未翻译的应用在Moodle网站管理中自己修改. 具体步骤: 先确定需要修改的关键字,也就是网站中没有翻译成中文的文字 在c ...