JavaScript与JavaQuery

JavaScript与JavaQuery

目录

  • JavaScript与JavaQuery
    • js 基础
      • 变量与基本数据类型
      • CPU 内存 硬盘
      • JavaScript历史
      • js 的作用
      • JS的功效(地位)
      • 游览器中的js
      • JS的组成
      • 体验 JS
      • 输出
    • 变量
      • 声明变量
      • 特性
      • 变量命名规范
      • 数据类型
      • js 中的进制
      • 数字的取值范围
      • 字符串数据类型
        • 字符串的嵌套
        • 字符串的长度获取
        • 字符串的拼接
      • 布尔类型
      • Undefined 和 Null
      • 数据类型转换
        • 转字符串
        • 转数字类型
        • 布尔数据类型
      • 编译与解释
      • 标识符
    • 运算符
      • 基本概念
      • 浮点数进度问题
      • 递增的递减运算符概念
      • 运算符
      • 逻辑运算符
      • 短路运算(逻辑中断)
      • 赋值运算符
      • 运算符优先级
    • JS 分支
      • JS 分支结构
      • 单路分支
      • 二路分支
      • 多路分支
      • 演练
      • 三元运算符
      • 演练 定时器 补零
      • switch 的用法
      • 循环
        • 循环嵌套
          • 演练 三角形
      • 游览器断点调试
      • 小结
    • JS 数组
      • 数组的定义
      • 数组获取数据的方法
      • 数组的遍历
      • 实例 求最大值
      • join数组方法 字符串数组的拼接
      • 数组添加数据
      • 小结
      • 遍历演练
    • JS 函数
      • 函数的定义与调用
      • 带参函数 与 返回值
        • 形参与实参
        • 实参大于形参
        • 形参大于实参
      • 演练
      • arguments (函数可以不要参数)
        • arguments 演示求总和
      • 注意 函数返回多个值 会出现问题
      • 不定长参数
      • 函数嵌套
      • 匿名函数
    • 作用域
      • 全局和局部变量的介绍
      • 作用域链
      • 练一练
    • 预解析
      • 变量
      • 函数
      • 预解析规则
      • 练一练
        • 案例1
        • 案例2
        • 案例3
        • 案例4
    • JS 对象
      • 对象是什么
      • 我们为什么要使用对象
      • 创建对象 方式一
        • 演示
        • 获取属性的值
      • 创建对象 方式二
      • 创建对象 方式三 构造函数
      • 遍历对象属性
        • 演示
      • 对象 练一练
      • 小结
      • 内置对象
    • 数学类 Math
      • Math 常用类
        • 向上取整和向下取整
        • round 和 abs
      • 生成随机数
      • 获取 最小值 a到 最大值 b之间的随机整数
      • 演练 猜数字小游戏
    • 日期对象 data
        • 练一练 倒计时
      • 计算还有多久到51劳动节
        • 时间戳
        • 构造时间
      • 小结
    • 数组对象
      • 遍历
      • 数组的增删改查操作
        • 增 末尾添加 push
        • 删 末尾删除
        • 增 首位添加
        • 删 首位删除
      • 增删方法
      • 数组排序
      • 数组索引
        • 练一练
      • 数组转字符串
      • 数组切片
      • 小结
    • 字符串对象
      • 基本
      • 查找位置
        • 演练
      • 根据下标拿内容
        • 演练 统计
      • 字符串方法
      • 字符串分割
      • 值的引用传递和值传递
        • 演练
      • 传参情况
    • 注意
  • wed APIs
    • api 与 web api
      • 什么是web api
    • 什么是 dom
      • dom 树
    • 获取元素
      • 根据标签来获取
        • 演练
      • 通过HTML5 新增方法获取 (根据类来拿)
        • 演练 (通过 class 类来拿)
        • 演练 (通过css 选择器来拿)
      • 小结
      • 获取box
    • 事件基础
      • 常见的鼠标事件
        • 演练 点击事件
        • 演练 行内式
    • 操作元素
      • 改变元素标签
        • 演练
      • 区别 innerText 与 innerHtml
      • innerHtml 添加值
      • 修改属性值
        • 演练
      • 演练 分时显示不同的图片
    • 操作表单属性
      • 控制内容
        • 演练 修改值
        • 演练 密码显隐
      • 修改样式
        • 演练 开关灯
      • 显示隐藏
      • 获得焦点案例
      • 表单验证 验证密码长度
      • 小结
      • 演练
      • 案例 排查按钮点击
      • 鼠标进入与鼠标移除事件
      • 演练 全选与取消
    • 获取属性的值
      • 自义定属性
      • 移除属性
      • 演练 table 切换栏
      • 自义定属性规范
    • 节点
      • 节点层级
      • 父节点
        • 演练
      • 子节点 1
        • 演示
      • 子节点 2
        • 演示
      • 案例 下拉菜单
      • 兄弟节点
        • 第一个 .nextSibing
        • 第二个 .previousSibling
      • 创建节点
      • 末尾添加
      • 演练 留言板
        • 演示
      • 首位添加
        • 演示
    • 事件进阶
      • 传统事件注册
      • 事件解绑
        • 示例
    • dom 事件流
        • 示例
      • 捕获阶段
      • 冒泡阶段
      • dom 事件流的方向
      • 设置事件为冒泡方向
      • 阻止冒泡
        • 示例
      • 补充 事件绑定
      • 时间对象
      • 事件常用对象
      • this 与 事件的 target 属性
        • 示例
      • 事件类型
      • 阻止默认事件
        • 示例 取消 a 标签默认事件
      • 事件委托
      • 禁止复制
      • 节点操作
        • 首位添加子节点
          • 演练
        • 定时器
          • 示例
        • 倒计时器
          • 倒计时器让盒子消失
        • 案例 重新发验证码
    • js 执行机制
    • location 对象
        • 跳转百度
        • 页面跳转 显示用户名
      • location 的方法
      • navigator
      • history 对象
        • 回退 示例
        • 前进 示例
  • JQ
    • Jquery 入门
      • 关于Jquery
      • 下载 jquery
      • 两个模式
      • Jquery 用法
      • 窗体加载
        • 元素加载
      • 加载事后执行
    • Jquery 基础
      • dom 对象
      • jquery
      • jquery 对象的命名规则
      • jquery 对象与 dom 对象的显示
      • 不同对象用不同的方法
      • dom 对象转换为 jquery 对象
      • 案例 点击按钮让他消失
      • jquery 对象转换为 dom 对象
      • 案例 窗体一加载让他自动播放视频
      • 两种对象互相转换
    • jquery 常用 api
      • 基础选择器
      • 层级选择器
      • 样式调试
      • 筛选选择器
      • 筛选方法
      • 演练 下拉菜单
      • 鼠标事件
    • 样式操作
      • 样式连写
      • 获取css
      • 添加样式(类)
      • 移除样式
      • 切换样式
      • JS 样式 VS JQ 样式
      • 动画效果
        • 显示隐藏
        • 滑动
        • 淡入淡出
        • 自定义动画
      • 案例 王者网站
    • 属性操作
      • 获取固有属性
      • 改变属性
      • 获取勾选的数据
      • 获取自义定属性
      • 数据缓存 data
        • data VS attr
      • 演练
      • 获取控件的值(表单)
      • 设置值和标签(div...)
        • 设置值
      • 普通标签的内容操作 text html
    • 节点操作
      • 创建节点
      • 添加节点
      • 案例 留言板 添加
      • 删除会员
        • 移除自己
        • 移除自己的子级
      • 节点操作小结
    • 数据的遍历
      • 原生 js 遍历
        • js 遍历for循环
        • js forEach 遍历
        • jq 遍历
        • jq 遍历2 (专门遍历对象)
      • 案例 购物车
    • 正则表达式
      • 获取正则表达式
      • 元字符
        • \b 匹配数字
        • \s 验证空格
        • \w 验证英文符号
      • 以某开头
      • 以某结尾
      • 数量修饰 +号代表一个或者无限个
      • 数量修饰 ? 代表0个或者1个
      • 数量修饰 * 代表0个获取无限个
      • 数量修饰 {m} 限定有m个
      • 数量修饰 {m,n} 限定至少出现m次,至多出现n次
  • ajax
    • 参数
    • 使用json 数据格式定义对象
    • 使用json 数据格式定义对象数组
    • complete 参数
    • json 数组处理 演示
    • 实现无刷新
    • 新建后端接口
    • 前端放 ajax 请求接受json数据
    • fastjson
      • fastjson 引入
      • fastjson 使用
      • get 发 ajax 请求
        • 示例
      • json 请求
  • JS 面向对象
    • 构造方法
    • 方法的定义与应用
    • 带参的方法
    • 继承
      • 示例
      • 调用父类的构造方法
    • 方法中的局部变量和成员变量获取
    • 明确 this
  • JavaScript 类与对象
    • 老版本创建对象方式
    • 构造函数 new
    • 关注构造函数中的this
    • 类属性类方法
    • 构造方法中定义成员方法存在的问题
    • 获取原型对象的构造函数
    • 关于 this
    • 给原型对象写方法
    • 在经典 JS (es5之前) 怎么实现继承
      • 继承
  • es 6
    • ES 6 介绍
    • let
      • 变量预加载
      • let 变量具有暂时性死区特性
    • 练习
    • 练习二
    • const 常量
      • 声明常量一定要给值
      • consti声明的常量不可更改值(内存地址)但可以
    • 比较 三个声明方式
    • 箭头函数
      • 箭头函数一行代码有返回值的情况
      • 箭头函数 如果形参只有一个
      • 箭头函数只有一参只返回一行代码的数据
      • 箭头行数的中的 this
      • 字典对象中的 this
    • 剩余参数(变长参数)
      • 剩余参数配合解构赋值
      • 扩张运算符
      • 数组合并

js 基础

变量与基本数据类型

JavaScript与JavaQuery_第1张图片

CPU 内存 硬盘

JavaScript与JavaQuery_第2张图片

JavaScript历史

JavaScript与JavaQuery_第3张图片

js 的作用

JavaScript与JavaQuery_第4张图片

JS的功效(地位)

JavaScript与JavaQuery_第5张图片

游览器中的js

JavaScript与JavaQuery_第6张图片

JS的组成

JavaScript与JavaQuery_第7张图片
在这里插入图片描述
JavaScript与JavaQuery_第8张图片
在这里插入图片描述

体验 JS

行内式

JavaScript与JavaQuery_第9张图片

JavaScript与JavaQuery_第10张图片
JavaScript与JavaQuery_第11张图片

<div onclick="alert('123')">行内式</div>

内嵌式

JavaScript与JavaQuery_第12张图片

JavaScript与JavaQuery_第13张图片

    <script>
        alert('你好')
    </script>

外链式

在这里插入图片描述
JavaScript与JavaQuery_第14张图片

<script src="sjssj.js"></script>

输出

JavaScript与JavaQuery_第15张图片

变量

JavaScript与JavaQuery_第16张图片

声明变量

JavaScript与JavaQuery_第17张图片

先声明后赋值

var a;
a = 1;
a

边声明变赋值

var a = 1;
a

特性

JavaScript与JavaQuery_第18张图片

变量命名规范

JavaScript与JavaQuery_第19张图片

数据类型

JavaScript与JavaQuery_第20张图片
JavaScript与JavaQuery_第21张图片JavaScript与JavaQuery_第22张图片

js 中的进制

JavaScript与JavaQuery_第23张图片

前面加个0就是八进制
前面加个0x就是十进制
前面加个0b就是二进制

十六进制

JavaScript与JavaQuery_第24张图片

二进制

在这里插入图片描述

数字的取值范围

JavaScript与JavaQuery_第25张图片
JavaScript与JavaQuery_第26张图片
JavaScript与JavaQuery_第27张图片
JavaScript与JavaQuery_第28张图片

字符串数据类型

在这里插入图片描述
验证数据类型

typeof

返回一个数据类型

字符串的嵌套

在这里插入图片描述
使用转义符号 消掉引号的作用
JavaScript与JavaQuery_第29张图片

字符串的长度获取

JavaScript与JavaQuery_第30张图片

字符串的拼接

JavaScript与JavaQuery_第31张图片

布尔类型

ture
false

Undefined 和 Null

JavaScript与JavaQuery_第32张图片
JavaScript与JavaQuery_第33张图片

数据类型转换

转字符串

在这里插入图片描述

在这里插入图片描述

转数字类型

JavaScript与JavaQuery_第34张图片

布尔数据类型

JavaScript与JavaQuery_第35张图片
JS 特点 和 python 不同的是 Boolean() 里放空列表 返回 false ; JS里返回true
JavaScript与JavaQuery_第36张图片

编译与解释

Python JS 就是解释形 , Java 就是编译形
JavaScript与JavaQuery_第37张图片
JavaScript与JavaQuery_第38张图片

标识符

标记实体的符号
计算机中,数据都是实体,一切皆为对象,对象都是实体
标识符包括,变量名,方法名,
JavaScript与JavaQuery_第39张图片

JavaScript与JavaQuery_第40张图片

运算符

基本概念

JavaScript与JavaQuery_第41张图片

浮点数进度问题

JavaScript与JavaQuery_第42张图片

递增的递减运算符概念

JavaScript与JavaQuery_第43张图片

运算符

JavaScript与JavaQuery_第44张图片
a = 1;
b = “1”;
JavaScript与JavaQuery_第45张图片

双等号比较值
三等号比较值也比较数据类型

逻辑运算符

JavaScript与JavaQuery_第46张图片

短路运算(逻辑中断)

JavaScript与JavaQuery_第47张图片

逻辑 与 &&
JavaScript与JavaQuery_第48张图片
逻辑 或 ||
现象

在这里插入图片描述

赋值运算符

JavaScript与JavaQuery_第49张图片

运算符优先级

JavaScript与JavaQuery_第50张图片

JS 分支

JS 分支结构

JavaScript与JavaQuery_第51张图片

单路分支

JavaScript与JavaQuery_第52张图片

二路分支

JavaScript与JavaQuery_第53张图片

多路分支

JavaScript与JavaQuery_第54张图片

演练

JavaScript与JavaQuery_第55张图片
注意接受用户数据是:prompt(“请输入”)

prompt("请输入")

JavaScript与JavaQuery_第56张图片

三元运算符

JavaScript与JavaQuery_第57张图片

演练 定时器 补零

这里没有学到定时器 这里就演示补零操作
JavaScript与JavaQuery_第58张图片
要求
在这里插入图片描述

JavaScript与JavaQuery_第59张图片

switch 的用法

JavaScript与JavaQuery_第60张图片
JavaScript与JavaQuery_第61张图片

循环

三种循环
for while do-while
在这里插入图片描述
JavaScript与JavaQuery_第62张图片

循环嵌套

JavaScript与JavaQuery_第63张图片

演练 三角形

JavaScript与JavaQuery_第64张图片

JavaScript与JavaQuery_第65张图片

游览器断点调试

F12
打开控制台
JavaScript与JavaQuery_第66张图片
点击Sources

JavaScript与JavaQuery_第67张图片
有的游览器要点击 源代码
游览器不同要看游览器
JavaScript与JavaQuery_第68张图片

打断点 打完后记得刷新
JavaScript与JavaQuery_第69张图片
JavaScript与JavaQuery_第70张图片

JavaScript与JavaQuery_第71张图片
F8 字节跳到下一行
点这个也可以

在这里插入图片描述

小结

JavaScript与JavaQuery_第72张图片

JavaScript与JavaQuery_第73张图片

JS 数组

JavaScript与JavaQuery_第74张图片
JavaScript与JavaQuery_第75张图片

数组的定义

注意的是JS里的数组和java的不一样,JS数组和Java的集合非常相似
JavaScript与JavaQuery_第76张图片
输出结果
在这里插入图片描述
JS是弱类型语言,所以JS没有泛型集合,JS的集合是可以存储不同的数据类型的
JavaScript与JavaQuery_第77张图片

数组获取数据的方法

数组数据获取方法
JavaScript与JavaQuery_第78张图片

数组的遍历

JavaScript与JavaQuery_第79张图片

实例 求最大值

JavaScript与JavaQuery_第80张图片
JavaScript与JavaQuery_第81张图片

join数组方法 字符串数组的拼接

字符串.join(字符串列表)

在这里插入图片描述
JavaScript与JavaQuery_第82张图片
JavaScript与JavaQuery_第83张图片
在这里插入图片描述

数组添加数据

有规矩添加
JavaScript与JavaQuery_第84张图片

注意 不规则添加时
在这里插入图片描述
在这里插入图片描述
输出三号下标时
JavaScript与JavaQuery_第85张图片

创建0-100的数组

JavaScript与JavaQuery_第86张图片

小结

JavaScript与JavaQuery_第87张图片

遍历演练

演练有三种,可以自己试一试

JavaScript与JavaQuery_第88张图片
JavaScript与JavaQuery_第89张图片

JS 函数

JavaScript与JavaQuery_第90张图片

函数的定义与调用

JavaScript与JavaQuery_第91张图片

带参函数 与 返回值

JavaScript与JavaQuery_第92张图片

JavaScript与JavaQuery_第93张图片

形参与实参

JavaScript与JavaQuery_第94张图片

实参大于形参

需注意多出来的实参就丢弃
在这里插入图片描述

JavaScript与JavaQuery_第95张图片

形参大于实参

JavaScript与JavaQuery_第96张图片

演练

JavaScript与JavaQuery_第97张图片

arguments (函数可以不要参数)

JavaScript与JavaQuery_第98张图片
在这里插入图片描述

JavaScript与JavaQuery_第99张图片

arguments 演示求总和

JavaScript与JavaQuery_第100张图片

注意 函数返回多个值 会出现问题

JavaScript与JavaQuery_第101张图片
在这里插入图片描述

不定长参数

JavaScript与JavaQuery_第102张图片

函数嵌套

JavaScript与JavaQuery_第103张图片

匿名函数

JavaScript与JavaQuery_第104张图片

没有名字
JavaScript与JavaQuery_第105张图片

作用域

JavaScript与JavaQuery_第106张图片
JavaScript与JavaQuery_第107张图片
n 结果为 200

再开开下面的代码

JavaScript与JavaQuery_第108张图片
JavaScript与JavaQuery_第109张图片

全局和局部变量的介绍

JavaScript与JavaQuery_第110张图片
注意 要留意 JS 里可以这样

JavaScript与JavaQuery_第111张图片
用java 的思想来的话 , 建议这样用
JavaScript与JavaQuery_第112张图片

作用域链

JavaScript与JavaQuery_第113张图片

练一练

JavaScript与JavaQuery_第114张图片
注意 js 可以先调用 后定义
JavaScript与JavaQuery_第115张图片

预解析

JavaScript与JavaQuery_第116张图片

变量

第一种情况

JavaScript与JavaQuery_第117张图片

第二种情况

JavaScript与JavaQuery_第118张图片
JavaScript与JavaQuery_第119张图片

函数

注意:函数可以先调用 后定义
JavaScript与JavaQuery_第120张图片

JavaScript与JavaQuery_第121张图片

下面是python
注意:同样是弱类型语音 python 就不行, js 就可以
JavaScript与JavaQuery_第122张图片

预解析规则

JavaScript与JavaQuery_第123张图片

函数预解析

在这里插入图片描述

注意 匿名函数不可以先调用后定义
注意看下面的代码,结果为
在这里插入图片描述
预解析的时候应该是这个样子的
JavaScript与JavaQuery_第124张图片

练一练

案例1

JavaScript与JavaQuery_第125张图片
最后结果为 undefined

JavaScript与JavaQuery_第126张图片

案例2

JavaScript与JavaQuery_第127张图片
JavaScript与JavaQuery_第128张图片

案例3

JavaScript与JavaQuery_第129张图片
JavaScript与JavaQuery_第130张图片
a = undefined
b = 9

案例4

在这里插入图片描述

JS 对象

对象是什么

JavaScript与JavaQuery_第131张图片

我们为什么要使用对象

JavaScript与JavaQuery_第132张图片

创建对象 方式一

JavaScript与JavaQuery_第133张图片
JavaScript与JavaQuery_第134张图片
这就是对象,在 java 中是双列集合,在 python 中是字典,在 js 中就是对象

演示

JavaScript与JavaQuery_第135张图片
JavaScript与JavaQuery_第136张图片

 var obj1 = {
            "name":"小明",
            "age":16,
            "showinfo":function (){
                alert("大家好,我叫"+this.name+",我今年"+this.age+"岁")
            }

        }
        obj1.showinfo()
获取属性的值

在这里插入图片描述

这里小明没有截图,小明和年龄都可以输出来的

JavaScript与JavaQuery_第137张图片

创建对象 方式二

JavaScript与JavaQuery_第138张图片

JavaScript与JavaQuery_第139张图片

// 利用 new Object 创建对象
        var obj = new Object();

        obj.name = "小明";
        obj.age = 16;

        obj.showInfo = function () {
            alert("大家好,我叫" + this.name + ",我今年" + this.age + "岁")
        }
        obj.showInfo()

创建对象 方式三 构造函数

JavaScript与JavaQuery_第140张图片

JavaScript与JavaQuery_第141张图片

// 方式三
        // 定义函数
        function Student(name,age){
            this.name = name;
            this.age = age;

            this.showInfo = function (){
                alert("大家好,我叫" + this.name + ",我今年" + this.age + "岁")
            }
        }
        var xm = new Student("小明",16)
        xm.showInfo()
        var xh = new Student("小红",14)
        xh.showInfo()

遍历对象属性

JavaScript与JavaQuery_第142张图片
JavaScript与JavaQuery_第143张图片

演示

遍历对象 得到 所有属性和值JavaScript与JavaQuery_第144张图片

对象 练一练

JavaScript与JavaQuery_第145张图片

小结

JavaScript与JavaQuery_第146张图片
JavaScript与JavaQuery_第147张图片

内置对象

JavaScript与JavaQuery_第148张图片

数学类 Math

在这里插入图片描述
JavaScript与JavaQuery_第149张图片
JavaScript与JavaQuery_第150张图片

Math 常用类

JavaScript与JavaQuery_第151张图片

向上取整和向下取整

向上取整和向下取整
JavaScript与JavaQuery_第152张图片

round 和 abs

JavaScript与JavaQuery_第153张图片

生成随机数

JavaScript与JavaQuery_第154张图片
JavaScript与JavaQuery_第155张图片

获取 最小值 a到 最大值 b之间的随机整数

左边可能为零 所以后面要加上一个最小值
JavaScript与JavaQuery_第156张图片

演练 猜数字小游戏

JavaScript与JavaQuery_第157张图片

日期对象 data

JavaScript与JavaQuery_第158张图片
JavaScript与JavaQuery_第159张图片
JavaScript与JavaQuery_第160张图片

练一练 倒计时

JavaScript与JavaQuery_第161张图片
JavaScript与JavaQuery_第162张图片

计算还有多久到51劳动节

时间戳

JavaScript与JavaQuery_第163张图片
获得时间戳有两种方法可以拿的
JavaScript与JavaQuery_第164张图片

构造时间

JavaScript与JavaQuery_第165张图片
JavaScript与JavaQuery_第166张图片
五一的时间戳减去现在的时间戳 就获取时间戳的差了
JavaScript与JavaQuery_第167张图片
除以1000 就获的了秒了
JavaScript与JavaQuery_第168张图片
在除于60就是分钟了
JavaScript与JavaQuery_第169张图片
在除以60 就获的了小时了 , 在除以24就获得了天数了
JavaScript与JavaQuery_第170张图片

在这里插入图片描述

JavaScript与JavaQuery_第171张图片

小结

JavaScript与JavaQuery_第172张图片
JavaScript与JavaQuery_第173张图片

数组对象

JavaScript与JavaQuery_第174张图片
JavaScript与JavaQuery_第175张图片

遍历

利用 forEach 进行遍历
JavaScript与JavaQuery_第176张图片
也可以这样写
值,下标,本身
JavaScript与JavaQuery_第177张图片

数组的增删改查操作

JavaScript与JavaQuery_第178张图片

增 末尾添加 push
数组名.push(你要添加的值);

JavaScript与JavaQuery_第179张图片

删 末尾删除

pop 方法返回被移除的数据

数组名.pop();

JavaScript与JavaQuery_第180张图片

增 首位添加

unshift
JavaScript与JavaQuery_第181张图片

删 首位删除

shift
JavaScript与JavaQuery_第182张图片

增删方法

JavaScript与JavaQuery_第183张图片

数组排序

在这里插入图片描述
升序
JavaScript与JavaQuery_第184张图片

降序
JavaScript与JavaQuery_第185张图片
结合

JavaScript与JavaQuery_第186张图片

数组索引

JavaScript与JavaQuery_第187张图片

如果 值存在 就返回 下标 ,如果不存在就返回-1
JavaScript与JavaQuery_第188张图片
从右侧往前找
在这里插入图片描述

练一练

在这里插入图片描述

数组转字符串

JavaScript与JavaQuery_第189张图片
注意python 里面字符串数组才可以用join 方法,在js里什么数据类型的数组都可以连接
有返回值,不会影响自身

JavaScript与JavaQuery_第190张图片

数组切片

在这里插入图片描述
slice

JavaScript与JavaQuery_第191张图片

spliceJavaScript与JavaQuery_第192张图片
注意: 在2的后面添加7,8,9 的话就会在被删除的数据那里添加 7,8,9 (1是从哪开始删,2是删除个数)
JavaScript与JavaQuery_第193张图片JavaScript与JavaQuery_第194张图片

小结

JavaScript与JavaQuery_第195张图片
JavaScript与JavaQuery_第196张图片

字符串对象

基本

JavaScript与JavaQuery_第197张图片

查找位置

JavaScript与JavaQuery_第198张图片

演练

JavaScript与JavaQuery_第199张图片

根据下标拿内容

JavaScript与JavaQuery_第200张图片

演练 统计

JavaScript与JavaQuery_第201张图片

字符串方法

JavaScript与JavaQuery_第202张图片

在这里插入图片描述

字符串分割

JavaScript与JavaQuery_第203张图片

值的引用传递和值传递

JavaScript与JavaQuery_第204张图片

演练

结果为三
JavaScript与JavaQuery_第205张图片
注意 下面结果为 [9,2,3]

JavaScript与JavaQuery_第206张图片

传参情况

下面结果为 11 10
JavaScript与JavaQuery_第207张图片

注意

我们上面的学的是第一个部分 (语法)
JavaScript与JavaQuery_第208张图片

wed APIs

api 与 web api

JavaScript与JavaQuery_第209张图片
JavaScript与JavaQuery_第210张图片

什么是web api

JavaScript与JavaQuery_第211张图片

什么是 dom

JavaScript与JavaQuery_第212张图片

dom 树

JavaScript与JavaQuery_第213张图片

获取元素

JavaScript与JavaQuery_第214张图片
JavaScript与JavaQuery_第215张图片
输出的结果为null
JavaScript与JavaQuery_第216张图片

下面代码会输出

<div id = "three">03div>

JavaScript与JavaQuery_第217张图片

根据标签来获取

JavaScript与JavaQuery_第218张图片

演练

JavaScript与JavaQuery_第219张图片
JavaScript与JavaQuery_第220张图片
遍历
JavaScript与JavaQuery_第221张图片

通过HTML5 新增方法获取 (根据类来拿)

JavaScript与JavaQuery_第222张图片传一个 css 选择器就可以了

JavaScript与JavaQuery_第223张图片
JavaScript与JavaQuery_第224张图片

演练 (通过 class 类来拿)

JavaScript与JavaQuery_第225张图片
JavaScript与JavaQuery_第226张图片

演练 (通过css 选择器来拿)

JavaScript与JavaQuery_第227张图片

JavaScript与JavaQuery_第228张图片
JavaScript与JavaQuery_第229张图片
下面的加一个 All 就可以获取全部了

JavaScript与JavaQuery_第230张图片
JavaScript与JavaQuery_第231张图片

小结

JavaScript与JavaQuery_第232张图片

获取box

JavaScript与JavaQuery_第233张图片
JavaScript与JavaQuery_第234张图片

事件基础

JavaScript与JavaQuery_第235张图片

常见的鼠标事件

JavaScript与JavaQuery_第236张图片

演练 点击事件

JavaScript与JavaQuery_第237张图片JavaScript与JavaQuery_第238张图片

演练 行内式

JavaScript与JavaQuery_第239张图片

操作元素

JavaScript与JavaQuery_第240张图片

改变元素标签

JavaScript与JavaQuery_第241张图片

演练

演示1
JavaScript与JavaQuery_第242张图片
演示2
JavaScript与JavaQuery_第243张图片
演示3
JavaScript与JavaQuery_第244张图片

区别 innerText 与 innerHtml

JavaScript与JavaQuery_第245张图片

innerHtml 添加值

JavaScript与JavaQuery_第246张图片

修改属性值

JavaScript与JavaQuery_第247张图片

演练

JavaScript与JavaQuery_第248张图片

演练 分时显示不同的图片

JavaScript与JavaQuery_第249张图片
JavaScript与JavaQuery_第250张图片

操作表单属性

JavaScript与JavaQuery_第251张图片
示例
JavaScript与JavaQuery_第252张图片

控制内容

演练 修改值
在这里插入代码片`DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Titletitle>
head>
<body>
<h1>小明h1>

<button >打他button>



<input type="text" placeholder="你想让他干什么">



<script>
    // 获取对象
    var btn_wuyingmeng = document.querySelector("button")
    var input_text = document.querySelector("input")

    // 点击事件
    btn_wuyingmeng.onclick = function () {
        // 修改values
        input_text.placeholder = "小明收到了一点伤害";

    }

script>

body>
html>`
演练 密码显隐

JavaScript与JavaQuery_第253张图片

DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Titletitle>
head>
<body>


<input type="password" placeholder="请输入密码" id="pwd">
<button id="btn">显示密码button>


<script>
    // 获取对象
    var btn_wuyingmeng = document.querySelector("#btn");
    var input_text = document.querySelector("#pwd");
    var isHide = true;

    // 点击事件
    btn_wuyingmeng.onclick = function () {

        if (isHide) {
            // 修改
            input_text.type = "text";
            btn_wuyingmeng.innerText = "关闭显示";
            isHide = false;
        } else {


            input_text.type = "password";
            btn_wuyingmeng.innerText = "显示密码";
            isHide = true;
        }
    }

script>

body>
html>

修改样式

JavaScript与JavaQuery_第254张图片

演练 开关灯

JavaScript与JavaQuery_第255张图片
JavaScript与JavaQuery_第256张图片

JavaScript与JavaQuery_第257张图片

如果要改变文字的话 但这样要一一换样式 麻烦
注意 这里的如果要写改 样式的话要 使用小驼峰 比如 在css 你写 background-color:— 在JS 就得写成 backgroundColor= ----;

JavaScript与JavaQuery_第258张图片

先写样式

JavaScript与JavaQuery_第259张图片

JavaScript与JavaQuery_第260张图片

效果

JavaScript与JavaQuery_第261张图片

显示隐藏

JavaScript与JavaQuery_第262张图片

获得焦点案例

JavaScript与JavaQuery_第263张图片

trim 是去掉左右空格
JavaScript与JavaQuery_第264张图片

表单验证 验证密码长度

JavaScript与JavaQuery_第265张图片

小结

JavaScript与JavaQuery_第266张图片

演练

JavaScript与JavaQuery_第267张图片
效果

JavaScript与JavaQuery_第268张图片

JavaScript与JavaQuery_第269张图片

案例 排查按钮点击

JavaScript与JavaQuery_第270张图片
JavaScript与JavaQuery_第271张图片

先让按钮默认变成绿色

JavaScript与JavaQuery_第272张图片

在这里插入图片描述

鼠标进入与鼠标移除事件

在这里插入图片描述

JavaScript与JavaQuery_第273张图片
这里建议写 this
JavaScript与JavaQuery_第274张图片

最后效果
JavaScript与JavaQuery_第275张图片

演练 全选与取消

JavaScript与JavaQuery_第276张图片
JavaScript与JavaQuery_第277张图片

JavaScript与JavaQuery_第278张图片

获取属性的值

JavaScript与JavaQuery_第279张图片
在这里插入图片描述

自义定属性

JavaScript与JavaQuery_第280张图片
注意
getAttribute 是获取自定义的属性值

JavaScript与JavaQuery_第281张图片
这样就拿到自定义属性了

JavaScript与JavaQuery_第282张图片
JavaScript与JavaQuery_第283张图片

这个也可以拿系统属性
JavaScript与JavaQuery_第284张图片

移除属性

在这里插入图片描述
JavaScript与JavaQuery_第285张图片

演练 table 切换栏

JavaScript与JavaQuery_第286张图片

自义定属性规范

JavaScript与JavaQuery_第287张图片
JavaScript与JavaQuery_第288张图片
在这里插入图片描述

节点

JavaScript与JavaQuery_第289张图片

节点层级

JavaScript与JavaQuery_第290张图片

父节点

JavaScript与JavaQuery_第291张图片

演练

两个之前的区别是一个是拿节点一个是拿元素

JavaScript与JavaQuery_第292张图片
JavaScript与JavaQuery_第293张图片

子节点 1

JavaScript与JavaQuery_第294张图片

演示

拿子节点
JavaScript与JavaQuery_第295张图片
JavaScript与JavaQuery_第296张图片
JavaScript与JavaQuery_第297张图片

子节点 2

JavaScript与JavaQuery_第298张图片

演示

JavaScript与JavaQuery_第299张图片

JavaScript与JavaQuery_第300张图片

案例 下拉菜单

JavaScript与JavaQuery_第301张图片
JavaScript与JavaQuery_第302张图片

兄弟节点

JavaScript与JavaQuery_第303张图片

第一个 .nextSibing

拿的是用不着的节点
JavaScript与JavaQuery_第304张图片

第二个 .previousSibling

拿上一个元素的兄弟节点(元素节点)
JavaScript与JavaQuery_第305张图片
在这里插入图片描述

创建节点

JavaScript与JavaQuery_第306张图片

末尾添加

JavaScript与JavaQuery_第307张图片

演练 留言板

在这里插入图片描述

演示

JavaScript与JavaQuery_第308张图片
JavaScript与JavaQuery_第309张图片

首位添加

JavaScript与JavaQuery_第310张图片

JavaScript与JavaQuery_第311张图片

演示

JavaScript与JavaQuery_第312张图片

事件进阶

传统事件注册

JavaScript与JavaQuery_第313张图片

这样写时间会被覆盖

JavaScript与JavaQuery_第314张图片

防止我的事件被覆盖
JavaScript与JavaQuery_第315张图片

事件解绑

JavaScript与JavaQuery_第316张图片

示例

JavaScript与JavaQuery_第317张图片

JavaScript与JavaQuery_第318张图片

最好是写函数名
JavaScript与JavaQuery_第319张图片

dom 事件流

JavaScript与JavaQuery_第320张图片

示例

这里 son and father 都会输出

JavaScript与JavaQuery_第321张图片
JavaScript与JavaQuery_第322张图片

捕获阶段

JavaScript与JavaQuery_第323张图片

冒泡阶段

JavaScript与JavaQuery_第324张图片

dom 事件流的方向

JavaScript与JavaQuery_第325张图片
JavaScript与JavaQuery_第326张图片

设置事件为冒泡方向

JavaScript与JavaQuery_第327张图片

阻止冒泡

JavaScript与JavaQuery_第328张图片

示例

先添加形参
然后形参掉一个方法

JavaScript与JavaQuery_第329张图片

JavaScript与JavaQuery_第330张图片

补充 事件绑定

JavaScript与JavaQuery_第331张图片

JavaScript与JavaQuery_第332张图片
JavaScript与JavaQuery_第333张图片

时间对象

JavaScript与JavaQuery_第334张图片

JavaScript与JavaQuery_第335张图片

事件常用对象

JavaScript与JavaQuery_第336张图片

this 与 事件的 target 属性

JavaScript与JavaQuery_第337张图片

示例

JavaScript与JavaQuery_第338张图片
注意看下面图片

点的是 ul

JavaScript与JavaQuery_第339张图片

点的是01 (li)
JavaScript与JavaQuery_第340张图片
点的05(li)

JavaScript与JavaQuery_第341张图片

他们在特定的场合是一样的,但是他们不一样

事件类型

在这里插入图片描述JavaScript与JavaQuery_第342张图片

阻止默认事件

JavaScript与JavaQuery_第343张图片

示例 取消 a 标签默认事件

现象

JavaScript与JavaQuery_第344张图片

JavaScript与JavaQuery_第345张图片
JavaScript与JavaQuery_第346张图片

JavaScript与JavaQuery_第347张图片

取消 submit 按钮默认事件

JavaScript与JavaQuery_第348张图片

JavaScript与JavaQuery_第349张图片

JavaScript与JavaQuery_第350张图片
给 text 设置一个 class = u

提交验证

JavaScript与JavaQuery_第351张图片

这样写也可以,这两个是等价的

JavaScript与JavaQuery_第352张图片

在这里插入图片描述

事件委托

JavaScript与JavaQuery_第353张图片

JavaScript与JavaQuery_第354张图片

JavaScript与JavaQuery_第355张图片

bug 只获取了老的前六个,新添加的获取不了

JavaScript与JavaQuery_第356张图片

事件委托2

上面代码不变
JavaScript与JavaQuery_第357张图片

JavaScript与JavaQuery_第358张图片

JavaScript与JavaQuery_第359张图片

禁止复制

JavaScript与JavaQuery_第360张图片



<script>
    // 阻止右击
    document.addEventListener("contextmenu",function (e){
        e.preventDefault();
    })

    // 禁止选中
    document.addEventListener("selectstart",function (e){
        e.preventDefault();
    })
script>

节点操作

首位添加子节点

JavaScript与JavaQuery_第361张图片

演练

添加第一个列

JavaScript与JavaQuery_第362张图片

JavaScript与JavaQuery_第363张图片
JavaScript与JavaQuery_第364张图片
JavaScript与JavaQuery_第365张图片

添加二个列

JavaScript与JavaQuery_第366张图片
JavaScript与JavaQuery_第367张图片

设置a 标签 herf

JavaScript与JavaQuery_第368张图片

JavaScript与JavaQuery_第369张图片

JavaScript与JavaQuery_第370张图片

让a 标签有删除功能

JavaScript与JavaQuery_第371张图片

JavaScript与JavaQuery_第372张图片

JavaScript与JavaQuery_第373张图片

定时器

JavaScript与JavaQuery_第374张图片

JavaScript与JavaQuery_第375张图片

JavaScript与JavaQuery_第376张图片

示例

JavaScript与JavaQuery_第377张图片

在这里插入图片描述

JavaScript与JavaQuery_第378张图片

倒计时器

JavaScript与JavaQuery_第379张图片

JavaScript与JavaQuery_第380张图片

倒计时器让盒子消失

JavaScript与JavaQuery_第381张图片

在这里插入图片描述

JavaScript与JavaQuery_第382张图片

JavaScript与JavaQuery_第383张图片

JavaScript与JavaQuery_第384张图片

阻止定时器

JavaScript与JavaQuery_第385张图片

JavaScript与JavaQuery_第386张图片

案例 重新发验证码

JavaScript与JavaQuery_第387张图片

JavaScript与JavaQuery_第388张图片

js 执行机制

JavaScript与JavaQuery_第389张图片

location 对象

JavaScript与JavaQuery_第390张图片

跳转百度

JavaScript与JavaQuery_第391张图片

页面跳转 显示用户名

第一个页面

JavaScript与JavaQuery_第392张图片

JavaScript与JavaQuery_第393张图片

JavaScript与JavaQuery_第394张图片

获取参数

在这里插入图片描述
在这里插入图片描述

第二个页面

JavaScript与JavaQuery_第395张图片

location 的方法

JavaScript与JavaQuery_第396张图片

navigator

JavaScript与JavaQuery_第397张图片

在这里插入图片描述

history 对象

JavaScript与JavaQuery_第398张图片

回退 示例

JavaScript与JavaQuery_第399张图片

JavaScript与JavaQuery_第400张图片

前进 示例

JavaScript与JavaQuery_第401张图片

JavaScript与JavaQuery_第402张图片

JQ

Jquery 入门

关于Jquery

JavaScript与JavaQuery_第403张图片

JavaScript与JavaQuery_第404张图片

JavaScript与JavaQuery_第405张图片

下载 jquery

JavaScript与JavaQuery_第406张图片

两个模式

在这里插入图片描述

Jquery 用法

JavaScript与JavaQuery_第407张图片

JavaScript与JavaQuery_第408张图片

隐藏

JavaScript与JavaQuery_第409张图片

设置css

JavaScript与JavaQuery_第410张图片

窗体加载

JavaScript与JavaQuery_第411张图片

元素加载

$(函数);

JavaScript与JavaQuery_第412张图片
两个都可以

JavaScript与JavaQuery_第413张图片

加载事后执行

JavaScript与JavaQuery_第414张图片

JavaScript与JavaQuery_第415张图片

Jquery 基础

dom 对象

在这里插入图片描述

jquery

在这里插入图片描述

jquery 对象的命名规则

用 jqyery 拿对象,前面最好加上 $ 符号

JavaScript与JavaQuery_第416张图片

jquery 对象与 dom 对象的显示

JavaScript与JavaQuery_第417张图片

在这里插入图片描述

不同对象用不同的方法

JavaScript与JavaQuery_第418张图片

dom 对象转换为 jquery 对象

JavaScript与JavaQuery_第419张图片

JavaScript与JavaQuery_第420张图片

使用这个方法可以让文字不见

在这里插入图片描述

案例 点击按钮让他消失

JavaScript与JavaQuery_第421张图片

JavaScript与JavaQuery_第422张图片

使用 dom 方式让他消失

JavaScript与JavaQuery_第423张图片

JavaScript与JavaQuery_第424张图片

jQuery 让他消失

JavaScript与JavaQuery_第425张图片

JavaScript与JavaQuery_第426张图片

jquery 对象转换为 dom 对象

JavaScript与JavaQuery_第427张图片

JavaScript与JavaQuery_第428张图片

播放
$(‘video’)[0].play()
$(‘video’)get(0).play()

转换的例子

jquery 对象 . [0] 就可以获取 dom 对象

在这里插入图片描述

案例 窗体一加载让他自动播放视频

JavaScript与JavaQuery_第429张图片

也可以这样写

JavaScript与JavaQuery_第430张图片

两种对象互相转换

JavaScript与JavaQuery_第431张图片

jquery 常用 api

基础选择器

JavaScript与JavaQuery_第432张图片

层级选择器

JavaScript与JavaQuery_第433张图片

样式调试

在这里插入图片描述

JavaScript与JavaQuery_第434张图片

JavaScript与JavaQuery_第435张图片

JavaScript与JavaQuery_第436张图片

下面这个方法无需遍历

在这里插入图片描述

JavaScript与JavaQuery_第437张图片

筛选选择器

这个是jquery 特有的选择器

JavaScript与JavaQuery_第438张图片

JavaScript与JavaQuery_第439张图片

JavaScript与JavaQuery_第440张图片

筛选方法

JavaScript与JavaQuery_第441张图片

在这里插入图片描述

找父辈

JavaScript与JavaQuery_第442张图片

在这里插入图片描述

找一个类名为 box 的父辈

JavaScript与JavaQuery_第443张图片

在这里插入图片描述

找孩子

JavaScript与JavaQuery_第444张图片

JavaScript与JavaQuery_第445张图片

找孩子 找子孙

JavaScript与JavaQuery_第446张图片

JavaScript与JavaQuery_第447张图片JavaScript与JavaQuery_第448张图片

找兄弟

JavaScript与JavaQuery_第449张图片
在这里插入图片描述

找兄弟中的 class 为 tom 的 li

JavaScript与JavaQuery_第450张图片

后面的兄弟

JavaScript与JavaQuery_第451张图片
JavaScript与JavaQuery_第452张图片

前面的兄弟

在这里插入图片描述

JavaScript与JavaQuery_第453张图片

找前面的兄弟其中的一个

JavaScript与JavaQuery_第454张图片

JavaScript与JavaQuery_第455张图片

判断是否有这个类

JavaScript与JavaQuery_第456张图片

在这里插入图片描述

eq 筛选 方法按下标来选

JavaScript与JavaQuery_第457张图片

JavaScript与JavaQuery_第458张图片

eq 用筛选器来,不用筛选方法

JavaScript与JavaQuery_第459张图片

演练 下拉菜单

JavaScript与JavaQuery_第460张图片

JavaScript与JavaQuery_第461张图片

JavaScript与JavaQuery_第462张图片

JavaScript与JavaQuery_第463张图片

在这里插入图片描述

JavaScript与JavaQuery_第464张图片

JavaScript与JavaQuery_第465张图片

JavaScript与JavaQuery_第466张图片

JavaScript与JavaQuery_第467张图片

JavaScript与JavaQuery_第468张图片

鼠标事件

在这里插入图片描述

hover 传一个参 就是鼠标移进去移出来都会发生的事

hover 传二个参 第一个就是鼠标移进去事件 第二个是 鼠标移出来事件

mouseenter(鼠标移入事件)mouseleave(鼠标移出事件)

样式操作

JavaScript与JavaQuery_第469张图片

样式连写

JavaScript与JavaQuery_第470张图片

JavaScript与JavaQuery_第471张图片

获取css

JavaScript与JavaQuery_第472张图片

添加样式(类)

在这里插入图片描述

JavaScript与JavaQuery_第473张图片

JavaScript与JavaQuery_第474张图片

移除样式

jquery对象.removeClass()

JavaScript与JavaQuery_第475张图片

JavaScript与JavaQuery_第476张图片

切换样式

JavaScript与JavaQuery_第477张图片

有就移除,没有就添加

JavaScript与JavaQuery_第478张图片

JS 样式 VS JQ 样式

JavaScript与JavaQuery_第479张图片

JavaScript与JavaQuery_第480张图片

JavaScript与JavaQuery_第481张图片

JavaScript与JavaQuery_第482张图片

JavaScript与JavaQuery_第483张图片

JavaScript与JavaQuery_第484张图片

动画效果

显示隐藏

JavaScript与JavaQuery_第485张图片

效果是点击按钮慢慢消失,再点击慢慢显示出来

JavaScript与JavaQuery_第486张图片

隐藏后 执行函数里内容

JavaScript与JavaQuery_第487张图片

滑动

JavaScript与JavaQuery_第488张图片

JavaScript与JavaQuery_第489张图片

滑动 Toggle

JavaScript与JavaQuery_第490张图片

淡入淡出

fadeOut 淡出
fadeIn 淡入

JavaScript与JavaQuery_第491张图片

JavaScript与JavaQuery_第492张图片

JavaScript与JavaQuery_第493张图片

为了防止用户多次点击,对感观的影像,最好前面加上 stop()

JavaScript与JavaQuery_第494张图片

JavaScript与JavaQuery_第495张图片

设置不透明度
在这里插入图片描述

fadeTo
JavaScript与JavaQuery_第496张图片

鼠标移到盒子上显示,移出隐藏
JavaScript与JavaQuery_第497张图片

JavaScript与JavaQuery_第498张图片

两个参数情况

JavaScript与JavaQuery_第499张图片

JavaScript与JavaQuery_第500张图片

自定义动画

JavaScript与JavaQuery_第501张图片

jq对象.animate

JavaScript与JavaQuery_第502张图片

JavaScript与JavaQuery_第503张图片

案例 王者网站

JavaScript与JavaQuery_第504张图片

JavaScript与JavaQuery_第505张图片

JavaScript与JavaQuery_第506张图片

阻止动画对列

JavaScript与JavaQuery_第507张图片

JavaScript与JavaQuery_第508张图片

JavaScript与JavaQuery_第509张图片

效果

JavaScript与JavaQuery_第510张图片

属性操作

获取固有属性

只能拿系统属性

JavaScript与JavaQuery_第511张图片

JavaScript与JavaQuery_第512张图片

JavaScript与JavaQuery_第513张图片

改变属性

JavaScript与JavaQuery_第514张图片

JavaScript与JavaQuery_第515张图片

获取勾选的数据

在这里插入图片描述

prop

如果选中 显示 true
没有选中 显示 false

JavaScript与JavaQuery_第516张图片

获取自义定属性

JavaScript与JavaQuery_第517张图片

JavaScript与JavaQuery_第518张图片
JavaScript与JavaQuery_第519张图片

获取自义定属性 attr

JavaScript与JavaQuery_第520张图片

可以那系统属性

JavaScript与JavaQuery_第521张图片

JavaScript与JavaQuery_第522张图片

那按钮的选中状态不是很直观

JavaScript与JavaQuery_第523张图片

attr 传两个参数

JavaScript与JavaQuery_第524张图片

JavaScript与JavaQuery_第525张图片

JavaScript与JavaQuery_第526张图片

数据缓存 data

JavaScript与JavaQuery_第527张图片

JavaScript与JavaQuery_第528张图片

data 方法缓存数据,不给标签添加属性

JavaScript与JavaQuery_第529张图片

JavaScript与JavaQuery_第530张图片

data VS attr

在这里插入图片描述

JavaScript与JavaQuery_第531张图片

演练

JavaScript与JavaQuery_第532张图片

JavaScript与JavaQuery_第533张图片

获取控件的值(表单)

JavaScript与JavaQuery_第534张图片

JavaScript与JavaQuery_第535张图片

设置值和标签(div…)

JavaScript与JavaQuery_第536张图片

设置值

text 方法

在这里插入图片描述

JavaScript与JavaQuery_第537张图片

html 方法

JavaScript与JavaQuery_第538张图片
JavaScript与JavaQuery_第539张图片

JavaScript与JavaQuery_第540张图片

普通标签的内容操作 text html

JavaScript与JavaQuery_第541张图片

JavaScript与JavaQuery_第542张图片

JavaScript与JavaQuery_第543张图片

节点操作

创建节点

JavaScript与JavaQuery_第544张图片

添加节点

JavaScript与JavaQuery_第545张图片

JavaScript与JavaQuery_第546张图片

案例 留言板 添加

JavaScript与JavaQuery_第547张图片

JavaScript与JavaQuery_第548张图片

往后添加

JavaScript与JavaQuery_第549张图片

往前面添加

JavaScript与JavaQuery_第550张图片

JavaScript与JavaQuery_第551张图片

删除会员

JavaScript与JavaQuery_第552张图片

移除自己

JavaScript与JavaQuery_第553张图片

移除自己的子级

JavaScript与JavaQuery_第554张图片

节点操作小结

JavaScript与JavaQuery_第555张图片

JavaScript与JavaQuery_第556张图片

在这里插入图片描述

数据的遍历

原生 js 遍历

JavaScript与JavaQuery_第557张图片

js 遍历for循环

JavaScript与JavaQuery_第558张图片

js forEach 遍历

JavaScript与JavaQuery_第559张图片

jq 遍历

JavaScript与JavaQuery_第560张图片

jq 遍历2 (专门遍历对象)

这里就获得了每一个div

注意 这里的 item 是dom 对象

JavaScript与JavaQuery_第561张图片

案例 购物车

JavaScript与JavaQuery_第562张图片
JavaScript与JavaQuery_第563张图片

DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Titletitle>

    <style>
        input.num {
            width: 20px;
            text-align: center;
        }

        table {
            margin: 0 auto;
        }


    style>

    <script src="jquery-1.8.2.min.js">script>


    <script>
        function select_all() {
            // 获取我的状态
            var checked = $(this).prop("checked")

            // 获取其他的小复选框
            $(".goods").prop("checked", checked);

            // 总计
            count_all()
        }


        function count_all() {
            // 计算 个数
            var total_num = 0;
            // 计算 总结额
            var total_price = 0;

            // 计算个数
            $(".goods:checked").each(function (idx,item){
                var v = $(item).parent().siblings().children("input.num").val();
                total_num += parseFloat(v);

                // 结算总金额
                var price = $(item).parent().siblings().children("span.total").text();
                total_price += parseFloat(price)
            })

            // 数据回填
            $("span.all_Num").text(total_num);
            $("span.all_money").text(total_price.toFixed(2));
        }

        function goods_click() {
            // 拿到被选中的个数
            var checked_num = $(".goods:checked").size();
            // 获取总数
            var all_num = $(".goods").size();

            if (all_num === checked_num) {
                $(".selectAll").prop("checked", true);
            } else {
                $(".selectAll").prop("checked", false);
            }

            // 求总计
            count_all();
        }

        function num_jia() {
            // 获取目标控件 获取上一个兄弟
            var $ipt = $(this).prevAll("input");

            // 获取数量的值,让数量的值加一
            var num = $ipt.val();

            // 数值加一
            num++;

            // 重新赋值
            $ipt.val(num)

            // 调用总和的方法
            count_line_result(this);

            // 总计
            count_all()

        }

        function count_line_result(t) {
            // 找数量
            var num = $(t).parent().children("input").val();

            // 找单价
            var price = $(t).parent().siblings().children("span.price").text();

            // 求总和
            var line_result = num * price

            // 找当前行的价格的标签
            $(t).parent().siblings().children("span.total").text(line_result.toFixed(2));
        }

        function num_jian() {
            var $ipt = $(this).nextAll("input");
            // 获取数值
            var num = $ipt.val();

            // 数值减少
            num--;

            // 判断是否小于1,如果小于1,让新值等于1
            if (num < 1) {
                num = 1
            }

            // 新数据回填给文本控件
            // 重新赋值
            $ipt.val(num)

            // 调用总和的方法
            count_line_result(this);

            // 总计
            count_all()
        }

        function num_blur() {
            // 获取自己的值
            var num = $(this).val();

            // 判断非数值的情况
            if (isNaN(num)) {
                $(this).val(1);
                return
            }

            // 判断小于1的数据情况
            if (num < 1) {
                $(this).val(1);

            }

            // 调用总和的方法
            count_line_result(this);

            // 总计
            count_all()
        }

        function delete_tr() {

            $(this).parent().parent().remove();

            // 总计
            count_all()
        }

        $(function () {
            $(".selectAll").click(select_all);

            // 小复选框点击事件
            $("input.goods").click(goods_click);

            // 给+按钮添加事件
            $("button.jia").click(num_jia);

            // 给-按钮添加事件
            $("button.jian").click(num_jian);

            // 文本框失去焦点后 事件
            $("input.num").blur(num_blur);

            // 删除行
            $("a.delete").click(delete_tr);

        })


    script>
head>
<body>

<table width="600px" cellpadding="0" cellspacing="0" border="1">
    <caption><h1>购物车h1>caption>

    <thead>
    <tr>
        <th>01th>
        <th>02th>
        <th>03th>
        <th>04th>
        <th>05th>
        <th>06th>
    tr>
    thead>

    <tbody>
    <tr align="center">
        <td>
            <input type="checkbox" class="goods">
        td>
        <td>
            十万个为什么
        td>
        <td><span class="price">12.60span>
        td>
        <td>
            <button class="jian">-button>
            <input type="text" class="num" value="1">
            <button class="jia">+button>
        td>
        <td><span class="total">12.60span>
        td>
        <td>
            <a href="javascript:;" class="delete">删除a>
        td>
    tr>


    <tr align="center">
        <td>
            <input type="checkbox" class="goods">
        td>
        <td>
            十万个为什么2
        td>
        <td><span class="price">10.60span>
        td>
        <td>
            <button class="jian">-button>
            <input type="text" class="num" value="1">
            <button class="jia">+button>
        td>
        <td><span class="total">12.60span>
        td>
        <td>
            <a href="javascript:;" class="delete">删除a>
        td>
    tr>


    <tr align="center">
        <td>
            <input type="checkbox" class="goods">
        td>
        <td>
            十万个为什么3
        td>
        <td><span class="price">40.60span>
        td>
        <td>
            <button class="jian">-button>
            <input type="text" class="num" value="1">
            <button class="jia">+button>
        td>
        <td><span class="total">12.60span>
        td>
        <td>
            <a href="javascript:;" class="delete">删除a>
        td>
    tr>


    <tr align="center">
        <td>
            <input type="checkbox" class="goods">
        td>
        <td>
            十万个为什么4
        td>
        <td><span class="price">14.60span>
        td>
        <td>
            <button class="jian">-button>
            <input type="text" class="num" value="1">
            <button class="jia">+button>
        td>
        <td><span class="total">12.60span>
        td>
        <td>
            <a href="javascript:;" class="delete">删除a>
        td>
    tr>
    tbody>


    <tfoot>
    <tr align="right">
        <td align="center">
            <input type="checkbox" class="selectAll">
        td>

        <td colspan="5">
            已选中 <span class="all_Num">0span> 个商品
            总金额为 ¥<span class="all_money">0.00span>td>
    tr>
    tfoot>
table>

body>
html>

正则表达式

获取正则表达式

JavaScript与JavaQuery_第564张图片

可以这样理解
在这里插入图片描述

定义正则表达式兑现

正则对象 = /匹配的数据/

JavaScript与JavaQuery_第565张图片

JavaScript与JavaQuery_第566张图片

JavaScript与JavaQuery_第567张图片

元字符

\b 匹配数字

\b

JavaScript与JavaQuery_第568张图片

exec 方法可以看到,这个字符串 谁被匹配成功了,没有匹配成功返回null
JavaScript与JavaQuery_第569张图片

input 方法 可以获得 和谁在比较

index 方法 可以获得 和谁匹配的下标

JavaScript与JavaQuery_第570张图片

JavaScript与JavaQuery_第571张图片

JavaScript与JavaQuery_第572张图片

\s 验证空格

JavaScript与JavaQuery_第573张图片

\w 验证英文符号

JavaScript与JavaQuery_第574张图片

JavaScript与JavaQuery_第575张图片

JavaScript与JavaQuery_第576张图片

JavaScript与JavaQuery_第577张图片

以某开头

^

JavaScript与JavaQuery_第578张图片

JavaScript与JavaQuery_第579张图片

以某结尾

$

JavaScript与JavaQuery_第580张图片

数量修饰 +号代表一个或者无限个

JavaScript与JavaQuery_第581张图片

JavaScript与JavaQuery_第582张图片

在这里插入图片描述

JavaScript与JavaQuery_第583张图片

数量修饰 ? 代表0个或者1个

JavaScript与JavaQuery_第584张图片

数量修饰 * 代表0个获取无限个

在这里插入图片描述

数量修饰 {m} 限定有m个

JavaScript与JavaQuery_第585张图片

JavaScript与JavaQuery_第586张图片

数量修饰 {m,n} 限定至少出现m次,至多出现n次

JavaScript与JavaQuery_第587张图片

. 匹配一切

ajax

JavaScript与JavaQuery_第588张图片

参数

JavaScript与JavaQuery_第589张图片

JavaScript与JavaQuery_第590张图片

使用json 数据格式定义对象

JavaScript与JavaQuery_第591张图片

使用json 数据格式定义对象数组

JavaScript与JavaQuery_第592张图片

complete 参数

JavaScript与JavaQuery_第593张图片

json 数组处理 演示

有序包无序操作
这个有点麻烦

JavaScript与JavaQuery_第594张图片

DOCTYPE html>

<html lang="en">

<head>

    <meta charset="UTF-8">

    <title>Titletitle>

    <link rel="stylesheet" href="common.css">

    <script src="jquery-1.8.2.min.js">script>

    <script>

        function write_student(class1207) {

​

            $.each(class1207,function (idx,item){

                // 生成一个tr

                var $tr = $("");

                // 生成两个td

                var $td1 = $("");

                var name = item.name;

                $td1.text(name);

                var $td2 = $("");

                var age = item["age"];

                $td2.text(age)

                // tr添加td

                $tr.append($td1);

                $tr.append($td2);

                // 让table添加tr

                $("table").append($tr);

            })}$(function () {

            var class1207 = [

                {"name": "孔明1", "age": 16},

                {"name": "孔明66", "age": 16},

                {"name": "孔明3", "age": 16},

            ];// 遍历呈现数据

            write_student(class1207);

        });

    script>

head>

<body><table width="300" border="1">

    <caption><h1>学生信息列表h1>caption>

    <tr>

        <td>姓名td>

        <td>年龄td>

    tr>

​

​

table>body>

html>

JavaScript与JavaQuery_第595张图片

实现无刷新

JavaScript与JavaQuery_第596张图片

JavaScript与JavaQuery_第597张图片

JavaScript与JavaQuery_第598张图片

新建后端接口

注意这里可能会乱码,要设置编码格式

package servlet;

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.io.PrintWriter;

@WebServlet("/student_list")
public class Student extends HttpServlet {
    @Override
    protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
//        [{"name":"张三","age":16},{"name":"李四","age":22}

        String stu_list = "[{\"name\":\"张三\",\"age\":16},{\"name\":\"李四\",\"age\":22}]";
        PrintWriter writer = resp.getWriter();
        writer.write(stu_list);
    }


}

JavaScript与JavaQuery_第599张图片

package servlet;

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.io.PrintWriter;

@WebServlet("/student_list")
public class Student extends HttpServlet {
    @Override
    protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
//        [{"name":"张三","age":16},{"name":"李四","age":22}
//        Content-Type: text/html;charset=utf-8
        // 说到
        resp.setHeader("Content-Type","text/html;charset=utf-8");
        // 做到
        resp.setCharacterEncoding("utf-8");

        String stu_list = "[{\"name\":\"张三\",\"age\":16},{\"name\":\"李四\",\"age\":22}]";
        PrintWriter writer = resp.getWriter();
        writer.write(stu_list);
    }


}

JavaScript与JavaQuery_第600张图片

前端放 ajax 请求接受json数据

JavaScript与JavaQuery_第601张图片

后端

package servlet;

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.io.PrintWriter;

@WebServlet("/student_list")
public class Student extends HttpServlet {
    @Override
    protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
//        [{"name":"张三","age":16},{"name":"李四","age":22}
//        Content-Type: text/html;charset=utf-8
        // 说到
        resp.setHeader("Content-Type","text/html;charset=utf-8");
        // 做到
        resp.setCharacterEncoding("utf-8");

        String stu_list = "[{\"name\":\"张三\",\"age\":16},{\"name\":\"李四\",\"age\":22}]";
        PrintWriter writer = resp.getWriter();
        writer.write(stu_list);
    }


}

前端

<%--
  Created by IntelliJ IDEA.
  User: SSOA
  Date: 2022/5/21
  Time: 9:59
  To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <title>$Title$title>
    <script src="jquery-1.8.2.min.js">script>
    <script>
        function btn_click() {
            $.ajax({
                url: "student_list",
                data: {},
                type: "get",
                dataType: "json",
                success: function (result) {
                    // 遍历这个json 数据,进行相关操作
                    $.each(result, function (idx, item) {
                        // 新建行并添加到 table 中
                        var $tr = $("");
                        $tr.css("text-align","center")
                        $("table").append($tr);
                        // 新建 td 放到 tr 里面
                      var $td1 = $("");
                      $td1.text(item.name)
                      $tr.append($td1)
                      var $td2 = $("");
                      $td2.text(item.age);
                      $tr.append($td2)
                    })
                }
            })
        }

        $(function () {
            $("button").click(btn_click);
        })
    script>


head>
<body>

<button>点我那数据button>

<table width="600px" border="1" cellpadding="0" cellspacing="0" >
    <tr>
        <th>姓名th>
        <th>年龄th>
    tr>

    <tr>
        <td>td>
        <td>td>
    tr>
table>

body>
html>

fastjson

fastjson 引入

拼json 字符串功能
可以看出是非常累的

package servlet;

import bean.Student;

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.io.PrintWriter;
import java.util.ArrayList;
import java.util.List;

@WebServlet("/student_list")
public class StudentList extends HttpServlet {
    @Override
    protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
//        [{"name":"张三","age":16},{"name":"李四","age":22}
//        Content-Type: text/html;charset=utf-8
        // 说到
        resp.setHeader("Content-Type","text/html;charset=utf-8");
        // 做到
        resp.setCharacterEncoding("utf-8");

        // 模拟对象集合
        // 模拟业务层拿数据
        List<Student> studentsList = getStringList();
        String jsonStr = "";
        jsonStr += "[";

        // json 字符串
        for (Student s :
                studentsList) {
            String fmt = "{\"name\":\"%s\",\"age\":%s}";
            String d = String.format(fmt,s.getName(),s.getAge());
            jsonStr += d;
            jsonStr += ",";

        }

        jsonStr = jsonStr.substring(0,jsonStr.length() - 1);
        jsonStr += "]";
        System.out.println(jsonStr);

        PrintWriter writer = resp.getWriter();
//        writer.write(stu_list);
    }

    private List<Student> getStringList() {
        /// 模拟返回数据

        // 对象集合
        List<Student> studentList = new ArrayList<>();

        // 新建对象,设置属性
        bean.Student xm = new bean.Student();
        xm.setName("小明");
        xm.setAge(16);
        xm.setDesc("ssssss");


        // 把对象添加到集合中

        return studentList;
    }


}

fastjson 使用

JavaScript与JavaQuery_第602张图片

示例

JavaScript与JavaQuery_第603张图片

JavaScript与JavaQuery_第604张图片

bean

package bean;

public class StudentBean {
    // 定义属性
    private String name;
    private int age;
    private String beizhu;

    // 提供字符串显示形态

    @Override
    public String toString() {
        return "StudentBean{" +
                "name='" + name + '\'' +
                ", age=" + age +
                ", beizhu='" + beizhu + '\'' +
                '}';
    }

    // 提供功有方法
    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public int getAge() {
        return age;
    }

    public void setAge(int age) {
        this.age = age;
    }

    public String getBeizhu() {
        return beizhu;
    }

    public void setBeizhu(String beizhu) {
        this.beizhu = beizhu;
    }
}

新方法拼 json 字符串

package servlet;

import bean.Student;
import com.alibaba.fastjson.JSON;

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.io.PrintWriter;
import java.util.ArrayList;
import java.util.List;

@WebServlet("/student_list")
public class StudentList extends HttpServlet {
    @Override
    protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
//        [{"name":"张三","age":16},{"name":"李四","age":22}
//        Content-Type: text/html;charset=utf-8
        // 说到
        resp.setHeader("Content-Type", "text/html;charset=utf-8");
        // 做到
        resp.setCharacterEncoding("utf-8");

        // 模拟对象集合
        // 模拟业务层拿数据
        List<Student> studentsList = getStringList();

        String jsonStr = JSON.toJSONString(studentsList);
        System.out.println(jsonStr);

//        jsonStr += "[";
//        // json 字符串
//        for (Student s :
//                studentsList) {
//            String fmt = "{\"name\":\"%s\",\"age\":%s}";
//            String d = String.format(fmt,s.getName(),s.getAge());
//            jsonStr += d;
//            jsonStr += ",";
//
//        }
//
//        jsonStr += jsonStr.substring(0,jsonStr.length() - 1);
//        jsonStr += "]";
//        System.out.println(jsonStr);
//


        PrintWriter writer = resp.getWriter();
//        writer.write(stu_list);
    }

    private List<Student> getStringList() {
        /// 模拟返回数据

        // 对象集合
        List<Student> studentList = new ArrayList<>();

        // 新建对象,设置属性
        bean.Student xm = new bean.Student();
        xm.setName("小明");
        xm.setAge(16);
        xm.setDesc("ssssss");

        // 新建对象,设置属性
        bean.Student xh = new bean.Student();
        xh.setName("小红");
        xh.setAge(23);
        xh.setDesc("tttttttttt");

        studentList.add(xm);
        studentList.add(xh);
        // 把对象添加到集合中

        return studentList;
    }


}

<%--
  Created by IntelliJ IDEA.
  User: SSOA
  Date: 2022/5/21
  Time: 9:59
  To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <title>$Title$title>
    <script src="jquery-1.8.2.min.js">script>
    <script>
        function btn_click() {
            $.ajax({
                url: "student_list",
                data: {},
                type: "get",
                dataType: "json",
                success: function (result) {
                    // 遍历这个json 数据,进行相关操作
                    $.each(result, function (idx, item) {
                        // 新建行并添加到 table 中
                        var $tr = $("");
                        $tr.css("text-align", "center")
                        $("table").append($tr);
                        // 新建 td 放到 tr 里面
                        var $td1 = $("");
                        $td1.text(item.name)
                        $tr.append($td1)
                        var $td2 = $("");
                        $td2.text(item.age);
                        $tr.append($td2)
                    })
                }
            })
        }

        $(function () {
            $("button").click(btn_click);
        })
    script>


head>
<body>

<button>点我那数据button>

<table width="600px" border="1" cellpadding="0" cellspacing="0">
    <tr>
        <th>姓名th>
        <th>年龄th>
    tr>

    <tr>
        <td>td>
        <td>td>
    tr>
table>

body>
html>

JavaScript与JavaQuery_第605张图片

get 发 ajax 请求

JavaScript与JavaQuery_第606张图片

JavaScript与JavaQuery_第607张图片

示例

注意这样既可以处理 get 请求 或者是 post 请求

JavaScript与JavaQuery_第608张图片

JavaScript与JavaQuery_第609张图片

post 方法也是一样

JavaScript与JavaQuery_第610张图片

json 请求

JavaScript与JavaQuery_第611张图片

JS 面向对象

JavaScript与JavaQuery_第612张图片

JavaScript与JavaQuery_第613张图片

构造方法

JavaScript与JavaQuery_第614张图片

构造器实例化传参

JavaScript与JavaQuery_第615张图片

方法的定义与应用

JavaScript与JavaQuery_第616张图片

JavaScript与JavaQuery_第617张图片

带参的方法

JavaScript与JavaQuery_第618张图片

在这里插入图片描述

继承

JavaScript与JavaQuery_第619张图片

示例

JavaScript与JavaQuery_第620张图片

调用父类的构造方法

JavaScript与JavaQuery_第621张图片

JavaScript与JavaQuery_第622张图片

方法中的局部变量和成员变量获取

JavaScript与JavaQuery_第623张图片

明确 this

JavaScript与JavaQuery_第624张图片

JavaScript与JavaQuery_第625张图片

JavaScript 类与对象

JavaScript与JavaQuery_第626张图片

老版本创建对象方式

在这里插入图片描述

JavaScript与JavaQuery_第627张图片

JavaScript与JavaQuery_第628张图片

构造函数 new

JavaScript与JavaQuery_第629张图片

关注构造函数中的this

JavaScript与JavaQuery_第630张图片

这里需要注意

JavaScript与JavaQuery_第631张图片

类属性类方法

js中的静态属性 相当于java中的static的属性或方法

JavaScript与JavaQuery_第632张图片

构造方法中定义成员方法存在的问题

JavaScript与JavaQuery_第633张图片

结果是 false

JavaScript与JavaQuery_第634张图片

JavaScript与JavaQuery_第635张图片

在构造方法的原型对象上放数据

JavaScript与JavaQuery_第636张图片

JavaScript与JavaQuery_第637张图片

获取原型对象的构造函数

JavaScript与JavaQuery_第638张图片

JavaScript与JavaQuery_第639张图片

JavaScript与JavaQuery_第640张图片

JavaScript与JavaQuery_第641张图片

关于 this

JavaScript与JavaQuery_第642张图片

JavaScript与JavaQuery_第643张图片

给原型对象写方法

原生的数组没有求和方法,这里我们可以自行添加
JavaScript与JavaQuery_第644张图片

JavaScript与JavaQuery_第645张图片

JavaScript与JavaQuery_第646张图片

在经典 JS (es5之前) 怎么实现继承

JavaScript与JavaQuery_第647张图片

可以看都这里两个方式都可以调用此函数

JavaScript与JavaQuery_第648张图片

JavaScript与JavaQuery_第649张图片

JavaScript与JavaQuery_第650张图片

JavaScript与JavaQuery_第651张图片

利用 call 方法进行传参

如果func方法有参数,那么给call方法后面追加参数

JavaScript与JavaQuery_第652张图片

继承

父类

JavaScript与JavaQuery_第653张图片

子类

JavaScript与JavaQuery_第654张图片

JavaScript与JavaQuery_第655张图片

JavaScript与JavaQuery_第656张图片

JavaScript与JavaQuery_第657张图片

JavaScript与JavaQuery_第658张图片

JavaScript与JavaQuery_第659张图片

改变子类原型对象的指向

JavaScript与JavaQuery_第660张图片

JavaScript与JavaQuery_第661张图片

JavaScript与JavaQuery_第662张图片

es 6

ES 6 介绍

JavaScript与JavaQuery_第663张图片

let

let 让变量有块级范围

JavaScript与JavaQuery_第664张图片

JavaScript与JavaQuery_第665张图片

变量预加载

JavaScript与JavaQuery_第666张图片

JavaScript与JavaQuery_第667张图片

let 变量具有暂时性死区特性

JavaScript与JavaQuery_第668张图片

JavaScript与JavaQuery_第669张图片

练习

结果是多少

JavaScript与JavaQuery_第670张图片

结果是 2 2

练习二

结果是多少

JavaScript与JavaQuery_第671张图片

结果是 0 1

const 常量

JavaScript与JavaQuery_第672张图片

声明常量一定要给值

JavaScript与JavaQuery_第673张图片

consti声明的常量不可更改值(内存地址)但可以

JavaScript与JavaQuery_第674张图片

比较 三个声明方式

JavaScript与JavaQuery_第675张图片

JavaScript与JavaQuery_第676张图片

这里和python 很像

下面是python
JavaScript与JavaQuery_第677张图片

如果值对不上

在这里插入图片描述

对象结构

JavaScript与JavaQuery_第678张图片

赋值

自定义一个变量名,解构得到对象属性的值

JavaScript与JavaQuery_第679张图片

JavaScript与JavaQuery_第680张图片

箭头函数

JavaScript与JavaQuery_第681张图片

JavaScript与JavaQuery_第682张图片

箭头函数一行代码有返回值的情况

在这里插入图片描述

箭头函数 如果形参只有一个

JavaScript与JavaQuery_第683张图片

箭头函数的简写

JavaScript与JavaQuery_第684张图片

箭头函数只有一参只返回一行代码的数据

fn m =mm; 
 var res = fn(4); 
 console.log(res);

箭头行数的中的 this

JavaScript与JavaQuery_第685张图片

在这里插入图片描述

字典对象中的 this

JavaScript与JavaQuery_第686张图片

注意:这个字典中的 this 指向的是window 窗口

JavaScript与JavaQuery_第687张图片

注意看下面的例子

JavaScript与JavaQuery_第688张图片

JavaScript与JavaQuery_第689张图片

这个里面的 this.age 输出的是 100

剩余参数(变长参数)

变长的形参可以在它前面加三个点
得到的数据是一个类似于数组的有序容器

JavaScript与JavaQuery_第690张图片

剩余参数配合解构赋值

JavaScript与JavaQuery_第691张图片

扩张运算符

JavaScript与JavaQuery_第692张图片

数组合并

JavaScript与JavaQuery_第693张图片

你可能感兴趣的:(JavaScript,后端,HTML,开发语言,后端,javascript,html5)