![](https://img-blog.csdnimg.cn/20201014180756724.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
JavaScript
文章平均质量分 94
Martian_小小
这个作者很懒,什么都没留下…
展开
-
一文弄懂节流和防抖
一、防抖原理:其总是在设置时间的最后一刻执行一次,且只执行一次。在事件被触发n秒后再执行回调函数,如果在这n秒内又被触发,则重新计时。用白话文来说就是:用户你尽管触发事件,但是事件我一定在事件触发 n 秒后才执行,如果你在一个事件触发的 n 秒内又触发了这个事件,那我就以新的事件的时间为准,n 秒后才执行,总之,就是要等你触发完事件 n 秒内不再触发事件,n秒后才执行。整个防抖实现的流程大概是:点击执行函数清除定时 clearTimeout(timer),需要清除上一次的定时器重新计时原创 2022-03-01 22:22:23 · 1220 阅读 · 0 评论 -
ES6-ES11的新特性
一、ES是什么?ES 全称 EcmaScript,是脚本语言的规范,JavaScript 是 EcmaScript的一种实现,所以 ES 新特性其实指的就是 JavaScript 的新特性1.1 ECMA-262Ecma 国际制定了许多标准,而 ECMA-262 只是其中的一个,ECMA-262(ECMAScript)历史版本查看网址:这里版本时间概述第 1 版1997年制定了语言的基本语法第 2 版1998年较小改动第 3 版1999年引入正则、异原创 2022-02-25 15:51:28 · 1386 阅读 · 0 评论 -
JS学习笔记(十四)动画和Canvas图形
JS学习笔记(十四)动画和Canvas图形文章目录JS学习笔记(十四)动画和Canvas图形一、使用requestAnimationFrame1.1 早期定时动画1.2 requestAnimationFrame1.3 cancelAnimationFrame1.4 通过requestAnimationFrame节流1.5 缓动动画1.5.1 缓动动画原理step进阶一:step进阶二:1.5.2 缓动动画添加回调函数二、基本画布功能2.1 getContext()2.2 toDataURL()三、2D绘原创 2021-10-14 14:54:51 · 323 阅读 · 0 评论 -
JS学习笔记(十三)事件
JS学习笔记(十三)事件文章目录JS学习笔记(十三)事件一、事件流1.1 事件冒泡1.2 事件捕获1.3 DOM 事件流二、事件处理程序(事件监听器)2.1 HTML 事件处理程序(不建议使用)2.1.1 HTML 事件处理程序的问题2.2 DOM0 事件处理程序2.3 DOM2 事件处理程序2.4 IE 事件处理程序2.5 跨浏览器事件处理程序三、事件对象3.1 DOM 事件对象(1)target 和 currentTarget(2)type属性(3)preventDefault()(4)stopPro原创 2021-10-12 11:12:44 · 286 阅读 · 0 评论 -
JS学习笔记(十二)DOM
JS学习笔记(十二)DOM文章目录JS学习笔记(十二)DOM一、DOM1.1 Document类型1.2 DOM树1.3 获取文档子节点 body 和 html(一)获取body(二)获取html1.4 文档信息1.5 获取元素1.5.1 根据ID获取1.5.2 根据标签名获取1.5.3 HTML5新增的获取方式1.6 特殊集合1.7 文档写入二、节点2.1 Node类型2.1.1 nodeName 和 nodeValue2.2 节点关系2.3 节点操作2.3.1 父节点的操作2.3.2 子节点的操作基本原创 2021-10-07 15:30:08 · 251 阅读 · 0 评论 -
JS学习笔记(十一)BOM
JS学习笔记(十一)BOM文章目录JS学习笔记(十一)BOM一、window对象1.1 窗口关系1.2 窗口位置与像素比1.2.1 moveTo() 和moveBy()1.2.2 像素比1.3 窗口大小1.3.1 innerWidth、innerHeight、outerWidth、outerHeight1.3.2 resizeTo() 和resizeBy()1.4 视口位置1.5 导航与打开新窗口1.5.1 弹出窗口1.5.2 弹窗屏蔽程序1.6 定时器1.7 系统对话框二、location 对象2.1原创 2021-09-26 14:58:15 · 297 阅读 · 0 评论 -
JS学习笔记(九)函数
JS学习笔记(九)函数文章目录JS学习笔记(九)函数一、函数的定义1.1 函数声明与函数表达式二、箭头函数三、参数四、没有重载五、默认参数值5.1 默认参数作用域与暂时性死区六、参数扩展与收集6.1 扩展参数6.2 收集参数七、函数作为值八、函数内部8.1 arguments8.2 this(重点)标准函数箭头函数8.3 new.target九、函数属性和方法十、闭包10.1 this对象十一、立即调用的函数表达式一、函数的定义利用function关键字的函数声明function sum(num原创 2021-09-24 16:09:02 · 115 阅读 · 0 评论 -
JS学习笔记(八)代理与反射
JS学习笔记(八)代理与反射文章目录JS学习笔记(八)代理与反射一、代理1.1 创建空代理1.2 定义捕获器1.3 捕获器参数和反射API1.4 可撤销代理1.5 实用反射API1.5.1 反射API与对象API1.5.2 状态标记1.5.3 用一等函数替代操作符二、代理捕获器与反射方法2.1 get()1. 返回值2. 拦截的操作3. 捕获器不变式2.2 set()1. 返回值2. 拦截的操作2.3 has()1. 返回值2. 拦截的操作2.4 defineProperty()1. 返回值2. 拦截的操原创 2021-09-23 14:43:24 · 170 阅读 · 0 评论 -
JS学习笔记(六)迭代器与生成器
JS学习笔记(六)迭代器与生成器文章目录JS学习笔记(六)迭代器与生成器一、迭代器模式1.1 可迭代协议1.1.1 实现Iterable接口需要的能力1.1.2 实现Iterator接口的内置类型1.1.3 接收可迭代对象的原生语言特性1.2 迭代器协议二、生成器2.1 生成器基础2.2 通过yield中断执行2.3.1 生成器对象作为迭代对象2.3.2 yield实现输入输出2.3.3 产生可迭代对象2.3.4 使用yield* 实现递归算法一、迭代器模式 &nbs原创 2021-09-23 09:57:20 · 154 阅读 · 0 评论 -
JS学习笔记(五)集合引用类型
JS学习笔记(五)集合引用类型文章目录JS学习笔记(五)集合引用类型一、Object1.1 Object创建实例的方法1. 使用new(用的少)2. 使用对象字面量表示法(更好)3. 利用构造函数构造函数的语法格式1.2 存取属性的方法1.3 for in 遍历对象属性二、Array2.1 创建数组1. 使用Array构造函数2. 使用数组字面量2.2 创建数组的静态方法2.2.1. from()2.2.2. of()2.3 数组空位2.4 检测是否为数组2.4.1. instanceof2.4.2.Ar原创 2021-09-19 11:47:03 · 474 阅读 · 0 评论 -
JS学习笔记(四)基本引用类型
JS学习笔记(四)基本引用类型文章目录JS学习笔记(四)基本引用类型一、 Date1.1 Date.parse()1.2 Date.UTC()1.3 Date.now()1.4 继承的方法1.5 日期格式化方法1.6 日期/时间组件方法二、RegExp2.1 RegExp 实例属性2.2 RegExp 实例方法2.2.1 exec()方法2.2.2 test() 方法2.2.3 RegExp构造函数属性2.3 原始值包装类型2.3.1 Boolean2.3.2 Number1. toFixed()2. t原创 2021-09-15 16:42:45 · 328 阅读 · 0 评论 -
JS学习笔记(三)变量、作用域与内存
JS学习笔记(三)变量、作用域与内存文章目录JS学习笔记(三)变量、作用域与内存一、原始值和引用值1.1 复制值1.2 传递参数1.3 确定类型二、执行上下文2.1 作用域链增强2.2 变量声明1. 使用var的函数作用域声明2. 使用let 的块级作用域声明3. 标识符查找三、垃圾回收(重点)3.1 标记清理(最常用)思路3.2 引用计数思路策略缺陷3.3 内存管理1. 通过const和let声明提升性能2. 隐藏类和删除操作3. 内存泄漏4. 静态分配与对象池使用对象池一、原始值和引用值ES变量包原创 2021-09-12 12:32:34 · 107 阅读 · 0 评论 -
JS笔记(一)基础知识
JS笔记(一)基础知识文章目录JS笔记(一)基础知识一、浏览器执行JS简介二、JavaScript实现2.1 ECMAScript2.2 DOM三、HTML中的JS3.1 <`script`>元素3.1.1 标签位置3.1.2 推迟执行脚本3.1.3 异步执行脚本3.1.4 动态加载脚本3.2 行内脚本和外部脚本3.2.1 行内式JS3.2.2 内嵌JS3.2.3 外部JS文件3.3 文档模式(doctype)3.4 确保JavaScript不能用是的用户体验一、浏览器执行JS简介浏览器分原创 2021-09-07 13:00:51 · 221 阅读 · 0 评论