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) 前 ...
随机推荐
- Scala Symbol解释
Symbol This class provides a simple way to get unique objects for equal strings. Since symbols are i ...
- Spring Boot 代码覆盖率测试
代码覆盖率测试是规范软件开发流程里一个必不可少的环节.一般都是在PG末尾阶段,伴随着IT自测产生. ↑以上,是自己yy出来的啊,反正我司是这样要求的.不跑覆盖率,鬼知道你在代码里夹杂了一些什么东西. ...
- 遇到 npm WARN npm npm does not support Node.js vx.x.x的解决办法
遇到如下警告 PS C:\Users\Administrator> npm npm WARN npm npm does not support Node.js v9.11.2 npm WARN ...
- 【BZOJ4016】[FJOI2014]最短路径树问题(点分治,最短路)
[BZOJ4016][FJOI2014]最短路径树问题(点分治,最短路) 题面 BZOJ 洛谷 题解 首先把最短路径树给构建出来,然后直接点分治就行了. 这个东西似乎也可以长链剖分,然而没有必要. # ...
- 《 .NET并发编程实战》阅读指南 - 第8章
先发表生成URL以印在书里面.等书籍正式出版销售后会公开内容.
- 针对接口编程能帮助达到面向对象开发和设计中"低耦合"的要求. 某公司...打印机...(笔试中遇到的题目)
针对接口编程能帮助达到面向对象开发和设计中"低耦合"的要求. 举个例子:某公司有一台特殊打印机,还可以使用一年,一年后可能换为另一种打印机,这两种打印机都特殊而贵. ...
- UNION ALL \UNION
(一)UNION ALL \UNION 的用法和区别 UNION UNION ALL 用途 用于使用SELECT语句组合两个或多个表的结果集. 用于使用SELECT语句组合两个或多个表的 ...
- One SQL to Rule Them All – an Efficient and Syntactically Idiomatic Approach to Management of Streams and Tables(中英双语)
文章标题 One SQL to Rule Them All – an Efficient and Syntactically Idiomatic Approach to Management of S ...
- Spring @Import注解源码解析
简介 Spring 3.0之前,创建Bean可以通过xml配置文件与扫描特定包下面的类来将类注入到Spring IOC容器内.而在Spring 3.0之后提供了JavaConfig的方式,也就是将IO ...
- SpringIOC源码解析(上)
注意,看完这篇文章需要很长很长很长时间... 准备工作 本文会分析Spring的IOC模块的整体流程,分析过程需要使用一个简单的demo工程来启动Spring,demo工程我以备好,需要的童鞋自行在下 ...