- 博客(52)
- 收藏
- 关注
原创 动态组件 commponted 怎么使用
A 组件跳转 B 组件的话 在 A 组件 export default 下 声明 inject: ['count'] 和 provide 一块使用。B 组件 也是 在 export default 下 声明 inject: ['count'] 想使用 A 组件传过来的话 直接。例如 id this.count.rowData.id 就能获取到。使用 changeView 方法把 B 组件 名称填进去。
2024-06-05 11:47:59
175
原创 HTML5 Canvas(画布)
HTML5<canvas>元素用于图形绘制,通过脚本(通常是 Javascript)来完成。<canvas>标签是图形容器,必须使用脚来绘制图形。你可以通过很多方法使用canvas来绘制路径,盒,圆、字符以及图像。
2023-08-02 14:36:03
1130
原创 JS 获取元素的大小(高度和宽度)
offsetHeight = border-top-width(上边框的宽度) + 内上边距 + 高度 + 内下边距 + border-buttom-width(下边框的宽度)获取元素可视部分的高度,即 css 的 height 和 padding 属性值之和,元素边框和滚动条不包括在内。clientHeight = 内上边距 + 高度 + border-button-width(下边框的宽度)scrollHright = 内上边距 + 包含内容的完全高度 + 内下边距。
2023-07-31 16:04:39
1154
原创 js 如何处理 防抖 和 节流
2.每次鼠标移动(事件触发)的时候都要先判断是否有定时器,如果有先清除以前的定时器。* 2.当鼠标每次滑动都先判断是否有定时器,如果有定时器则不开启新定时器。* 3.如果没有定时器,则开启定时器,存入到定时器的变量里面。* 3.如果没有定时器则开启定时器,记得保存在变量里面。* 核心:利用 setTimeout 定时器实现。* 1.定时器里面调用函数执行的函数。* 2.定时器里面要把定时器清空。* 1.声明一个定时器变量。* 1.声明定时器变量。
2023-07-30 10:02:24
290
原创 HTTP协议加强
通信协议是指通过的双方完成通信所必须遵守的规则和约定。通俗的理解:通信双方采用约定好的格式来发送和接收好消息,这种事先约定好的通信格式,就叫做通信协议。HTTP协议及超文本传送协议,它规定了客服端与服务器之间进行网页内容传输时,所必须遵守的传输方式。例如:客服端要以HTTP协议要求格式把数据提交到服务器服务器要以HTTP协议要求格式把数据响应到客服端请求消息由于HTTP协议属于客户端浏览器和服务器之间的通信协议。因此,客服端发起的请求叫做HTTP请求。
2023-06-18 20:29:22
2102
3
原创 跨域与JSONP
跨域同源指的是两个URL的协议、域名、端口一致,反之,则是跨域。出现跨域的根本原因:浏览器的同源策略不允许非同源的URL之间进行资源的交互。网页:http://接口:http:///userlistJSONP(JSON with Padding)是JSON的一种 “ 使用模式 ”,可用于解决主浏览器的跨域数据访问的问题。
2023-06-16 14:05:06
309
原创 HTTP协议+Ajax基本知识+axios+模板引擎的基本使用
我们先来了解一下上网的目的是什么?例如:刷微博、浏览新闻、在线听音乐、在线看电影、等等...上网的本质目的:通过互联网的形式来获取和消费资源。
2023-06-03 11:23:17
800
原创 jQuery 基础知识
要想使用 jQuery 的话,我们必须先要官网上下载( http://jquery.com/ )3.7 到 4.0的开发版本就可以,下载到文件夹以后桌面都可以 ,然后拖动到代码编辑器根目录下即可在需要使用 jQuery 的页面引入 jquery 的核心 js 文件。
2023-06-02 10:35:58
600
原创 数据结构 之 二叉搜索树 结构
以遍历根(父)节点的顺序来区分三种遍历方式。比如:先序遍历先遍历根节点、中序遍历第二遍历根节点、后续遍历最后遍历根节点。3.查找数据3.1.查找最大值&最小值在二叉搜索树中查找最值非常简单,最小值在二叉搜索树的最左边,最大值在二叉搜索树的最右边。只需要一直向左/右查找就能得到最值,如下图所示:
2023-05-23 11:39:03
940
原创 数据结构 - 哈希表理论
前面前言部分我们已经简单说明了, 什么是冲突. 虽然我们不希望这种情况发生, 当然更希望每个下标对应一个数据项, 但是通常这是不可能的.就像之前0~199的数字选取5个放在长度为10的单元格中如果我们随机选出来的是33, 82, 11, 45, 90, 那么最终它们的位置会是3-2-1-5-0, 没有发生冲突.但是如果其中有一个33, 还有一个73呢?还是发生了冲突.我们需要针对这种冲突提出一些解决方案, 即使冲突的可能性比较小, 你依然需要考虑到这种情况, 以便发生的时候进行对应的处理代码.
2023-05-09 19:24:00
172
原创 数据结构-集合结构
集合的特点集合通常是由一组无序的, 不能重复的元素构成.和数学中的集合名词比较相似, 但是数学中的集合范围更大一些, 也允许集合中的元素重复.在计算机中, 集合通常表示的结构中元素是不允许重复的.看成一种特殊的数组其实集合你可以将它看成一种特殊的数组.特殊之处在于里面的元素没有顺序, 也不能重复.没有顺序意味着不能通过下标值进行访问, 不能重复意味着相同的对象在集合中只会存在一份.集合的实现我们要像之前学习其他数据结构一样, 来学习一下集合.
2023-04-19 20:23:25
152
原创 JS 数据结构双向链表
单项链表:只能从头遍历到尾或者从尾部遍历到头(一般从头到尾)也就是链表相连的过程是单向的,实现的原理是上一个链表中有一个指向下一个的引用单向链表的缺点:我们可以轻松的到达下一个节点,但是回到前一个节点很难。但是,在实际开发中,经常会遇到需要回到上一个节点的情况双向链表:每次在插入或删除的时候某个节点,需要处理四个节点的引用,而不是两个,也就是实现起来比较困难一点并且相当于单项链表,必然占用内存空间更大一些但是这些缺点和我们使用起来的方便程度相比,是微不足道的双向链接的图解双向链表的创建。
2023-04-13 19:21:49
132
原创 JS 数据结构 链表
数组:要存储多个元素,数组(或列表)可能是最常用的数据结构。我们之前说过, 几乎每一种编程语言都有默认实现数组结构, 这种数据结构非常方便,提供了一个便利的语法来访问它的元素。但是数组也有很多缺点:数组的创建通常需要申请一段连续的内存空间(一整块的内存), 并且大小是固定的(大多数编程语言数组都是固定的), 所以当当前数组不能满足容量需求时, 需要扩容. (一般情况下是申请一个更大的数组, 比如2倍. 然后将原数组中的元素复制过去)而且在数组开头或中间位置插入数据的成本很高, 需要进行大量元素的位移.(尽管
2023-04-11 21:05:38
165
原创 JS 数据结构之队列结构
受限之处在于它只允许在表的前端( front )进行删除操作,而在表的后端 (rear)进行插入操作。队列(Queue),他是一种运算受限的线性表,先进先出(FIFO First In First Out)队列是一种受限的线性结构。生活中的类似的队列结构。
2023-04-10 11:00:39
76
原创 JS 认识栈结构
栈(stack),它是一种运算受限的线性表,后进先出(LIFO)LIFO(last in first out)表示就是后进入的元素, 第一个弹出栈空间. 类似于自动餐托盘, 最后放上的托盘, 往往先把拿出去使用.其限制是仅允许在表的一端进行插入和删除运算。这一端被称为栈顶,相对地,把另一端称为栈底。向一个栈插入新元素又称作进栈、入栈或压栈,它是把新元素放到栈顶元素的上面,使之成为新的栈顶元素;从一个栈删除元素又称作出栈或退栈,它是把栈顶元素删除掉,使其相邻的元素成为新的栈顶元素。
2023-04-09 13:16:35
100
原创 JS 数据结构与算法
算法的定义:一个有限指令集,每条指令的描述不依赖于语言接受一些输入(有情况下不需要输入)产生输出一定在有限步骤之后终止算法通俗理解:Algorithm这个单词本意就是解决问题的办法/步骤逻辑.数据结构的实现, 离不开算法.距离:电灯不工作的解决算法。
2023-04-09 11:45:50
60
原创 JS do...while循环
执行完毕之后,会对 while 后的条件表达式进行判断。do...while 语句可以确保循环至少执行一次。如果为 true ,则继续执行循环体,以此类推。do-while 语句在执行时,会先执行 do 后的循环体。如果为 false ,则循环终止。do...while语是先执行在判断。}while(条件表达式)while语句是先判断执行。do...while循环。
2023-04-08 13:28:34
143
原创 JS while 循环语句
如果结果为 true,则再次执行循环,执行完毕,继续判断,如此重复。如果结果为 true ,则执行循环体,执行完毕,继续判断。直到条件表达式结果为 false 时,循环结束。while 语句在执行时,会先对条件表达式进行判断,whilt(条件表达式){2.条件表达式(设置循环运行的条件)3.更新表达式(修改初始化变量)1.初始化表达式(初始化变量)- 通常循环语句可以使指的代码反复执行。do-whle 语句。- JS 中一共有三种循环语句。通常编写一个循环,要有三个要件。
2023-04-08 11:34:30
74
原创 JS switch语句
如果比较结果为 false,则继续比较其他 case 后的表达式,直到找到 true 为止。switch语句在执行时,会依次将 switch 后的表达式和 case 后的表达式进行全等比较。switch 语句和 if 语句功能是重复的,switch能做的事 if 也能做,反之亦然。如果所有的比较都是 false ,则执行 dedault后的语句。如果比较结果为 true ,则当前 case 处开始执行代码。也就说 case 是代码执行的起始位置。这就意味着只要是当前 case 后的代码,都会执行。
2023-04-08 11:06:13
140
原创 JS if-else语句
如果条件表达式结果为 true 则执行当前的 if 后的语句,执行完毕语句结束。if-else if-else语句,会自上而下依次对 if 后的条件表达式进行求值判断,如果所有的条件表达式都是 false ,则执行 else 后的语句。如果结果为 false 则执行 else 后的语句。如果结果为 true 则执行 if 后的语句。if-else if-else语句中只会有一个代码块被执行,if-else执行时,先对条件表达式进行求值判断,一旦有执行的代码块,下边的条件都不会在继续判断了。
2023-04-08 10:35:56
115
原创 JS if语句
if 语句只会控制紧随其后的那代码,如果希望可以控制多行代码 ,可以使用 {} 将语句库括起来。最佳实践:即使 if 后只有 1 行代码 ,我们也应该编写代码块,这样结构会更加的清晰。如果 if 后的添加 表达式不是布尔值,会转换为布尔值然后再运算。如果结果为 true ,则执行 if 后的语句。if 语句在执行会先对 if 后的条件表达式 求值判断。如果为 false 则不执行。if(条件表达式){流程控制语句可以用来改变程序执行的顺序。
2023-04-07 10:25:59
116
原创 JS 代码块
同一个代码中的代码,就是同一组代码,一个代码中的代码要么都执行要么都不执行。- 在 JS 中,使用 let 声明的变量具有块作用域。使用 {} 来创建代码块,代码块可以用来对代码进行分组,在代码中声明的变量无法在代码块的外部访问。- 在使用 var 声明的变量,不具有块作用域。
2023-04-07 10:03:41
43
原创 JS 运算符的优先级
因为()拥有最高的优先级,使用运算符时,如果遇到拿不准的,可以直接通过()优先级即可。- 在表格中位置越靠上的优先级越高,优先级越高越先执行,优先级一样自左向右执行。优先级我们不需要记忆,甚至表格都不需要看。和数学一样,JS 中的运算符也有优先级,比如先乘除和加减。可以通过优先级的表格来查询运算符的优先级。
2023-04-06 09:27:55
108
原创 JS 条件运算符
如果结果为 true , 则执行表达式 1。如果结果为 false ,则执行表达式 2。条件运算符在执行时,会先对条件表达式进行求值判断。表达式 1 :表达式 2。
2023-04-06 09:15:33
56
原创 JS 相等运算符
它会将其转换为相同的类型(通常转换为数值)然后在比较类型转换后值相同也会返回 true。- 他不会进行自动的类型转换,如果两个值的类型不同直接返回 false。- null 和 undefined 进行全等比较时会返回 false。- 使用相等运算符比较两个不同类型的值时。- 相等运算符,用来比较两个值是否相等。- 全等运算符,用来比较两个值是否相等。- NaN不和任何值相等,包括它自身。- 不等,用来检查两个值是否不相等。- 不全等,比较两个值是否不全等。- 不和自动的类型转换。
2023-04-06 09:02:22
34
原创 JS 关系运算符
当对非数值进行关系时,它会先将前转换为数值然后在比较,当关系运算符的两端是两个字符串,他不会将字符串转换为数值,而是逐位的比较字符的 Unicode 编码。成立返回 true ,不成立返回 false。- 关系运算符用来检查两个值之间的关系是否成立。- 用来检查左值是否大于等于右值。- 用来检查左值是否小于或等于右值。- 用来检查左值是否大于右值。- 用来检查左值是否小于右值。
2023-04-05 19:50:48
33
原创 JS &&逻辑与 和 || 逻辑或
&& 逻辑与可以对两个值进行与运算 当 && 左右都为 true 时,则返回 true ,否则返回 false 与运算是短路的与,如果一个值为 false ,则不看第二个值 与运算是找 false 的,如果找到 false 则直接返回 ,没有 false 才会返回 true 对于非布尔值进行与运算,它会转换为布尔值然后运算,但是最终会返回原值 如果第一个值为 false,则直接返回第一个值 如果第一个为 true ,则返回第二个值|| 逻辑或:可以对两个
2023-04-05 16:58:29
75
原创 JS 逻辑非
如果对一个非布尔值进行取反,它会先将其转化为布尔值然后再取反可以利用这个特点将其它类型转换为布尔值。可以用来对一个值进行非运算。- 它可以对一个布尔值进行取反操作。
2023-04-05 16:41:38
43
原创 JS 自增和自减
无论是 ++a 还是 a++ 都会使原来立刻增加 1。- 无论是 --a 还有 a-- 都会使原变量立刻减少1。- 自增分为前自增(++a)和 后自增 (a++)- 不同的是 ++a 和 a++ 所返回的值不同。- 自减分为前自减(--a)和后自减 (a--)- ++ 使用后会使得原来的变量立刻增加 1。a++ 是自增前的值 旧值。++a 是自增后的值 新值。- 不同的是 --a 和 a-- 的值不同。- 使用后会使得原来的变量立刻减小 1。
2023-04-05 16:35:51
170
原创 JS 赋值运算符
只有当变量的值为 null 或 undefined 时才会对变量进行赋值。+= a += n 等价于 a = a+n。-= a -= n 等价于 a = a-n。*= a *= n 等价于 a = a*n。/= a /= n 等价于 a = a/n。%= a %= n 等价于 a = a%n。- 将符号右侧的值赋值给左侧的变量。赋值运算符用来将一个值赋值给一个变量。
2023-04-05 16:14:48
39
原创 JS 运算符
其他运算的操作数是非数值时,都会转换为数值然后在进运算。- 算数运算符时,除了字符串的加法。运算符可以用来对一个或多个操作数(值)进行运算。%模运算,两个数相除取余数。
2023-04-01 10:32:58
36
原创 JS 类型转换--Boolean()
0 、NaN、空串、null、undefined、false。- 0 和 NaN 转换为 false。null 和 undefine 都转换为 false。空串 转换为 false。对象:对象会转换为 true。
2023-04-01 10:23:45
114
原创 JS 数据类型-- 数字(Number)
如果字符串是一个合法的数字,则会自动转换为对应的值。如果字符串时空串或纯空格的字符串,则转换为 0。true 转换为1, false 转换为 0。也可以使用 parseInt()来对一个数字转换为浮点数。如果字符串不是合法数字,则转换为NaN。解析时,会自左向右读取一个字符串,直到读取字符串中的值。解析时,会自左向右读取一个字符串,直接读取到字符串中。parseFloat()将一个字符串转换为浮点数。parseInt()将一个字符串转换为一个整数。专门用来将字符串转换为数值的两个方法。
2023-03-31 11:40:03
89
原创 JS 其他数据类型
当声明一个变量而没有赋值时,他的值就是 Undefined ,Undefined 类型的值只有一个就是 Undefined。</script>使用 typeof 检查一个 Undefined 类型的值时,会返回 " Undefined "效果:符号( Symbol )用来创建一个唯一标识<script></script>使用 typeof 检查符号时会返回 " symbol "
2023-03-31 09:56:12
33
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人