自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(24)
  • 收藏
  • 关注

原创 AJAX-day1:

AJAX是浏览器与服务器进行数据通信的技术 =>把数据变活。

2024-07-05 22:58:38 1147

原创 JS(ES_6)_2

如果没有指定 initialValue,则 accumulator 初始化为数组中的第一个值,并且 callbackFn 从数组中的第二个值作为 currentValue 开始执行。如果数组只有一个元素,那么将返回该元素而不使用分隔符。构造函数也有其缺陷,每个实例都包含不同的Function实例( 构造函数内的方法在做同一件事,但是实例化后却产生了不同的对象,方法是函数 ,函数也是对象)2.map:迭代映射,map() 方法创建一个新数组,这个新数组由原数组中的每个元素都调用一次提供的函数后的返回值组成。

2024-05-25 19:03:28 930

原创 JS_ES6(1)

作用域链是底层变量查找的机制:当函数执行时,优先查找当前函数作用域中有无需要用到的变量,如果找不到,逐级查找父级,直到全局 => 嵌套关系形成作用域链,同一作用域链从小到大查找变量,子可访父,父不可访子。这就是全局变量容易污染的原因,所以我们必须解决变量污染问题,那就是把变量封装到函数内,让它成为局部变量。如果程序还有其他函数,也需要用到age的值,则会受到影响,而且全局变量还容易被人修改,比较不安全。跟踪记录引用的次数,引用一次++,减少引用--,次数归0,释放内存。

2024-05-11 16:16:24 383

原创 JS-事件和日期对象

1.事件捕获(同类型事件时):从外层到内层;从最顶级的父元素一级一级往下找子元素触发同名事件,直到触发事件的元素为止。offset:获取元素自身的宽高(如果元素隐藏,则为0),包括自身设置,padding,border。offsetTop 和 offsetLeft(只读属性):获取元素距离自己定位父级元素的上,左距离。2.事件冒泡:从内层到外层;如果一个元素的事件被触发,那么他的所有父级元素的同名事件也会被依次触发。事件委托是利用事件流的特征的技巧:给父级注册事件,当触发子元素时,冒泡给父元素,事件触发。

2024-04-28 21:03:26 815

原创 JS_DOM(1)

document.SelecdtorAll()也是在括号内写字符串获取元素,不过它获取的是所有符合写入的内容的标签,并形成一个类似数组的东西——NodeList,取用方法和数组类似。获取 ul 的所有的 li :let lis = document.querySelectorAll('ul li')li:document.querySelector('ul li:first_child') 选ul的。类:document.querySelector('.box') 选第一个box。

2024-03-31 21:43:00 579 1

原创 算法(6)KMP+trie

在匹配失败时,会看最后一个与长字符串匹配的字符的数值:next [ j-1 ],比如next [ j-1 ]=2,则直接跳过子串的前2个字符 => 2表示可以“跳过匹配”的字符个数。当发现某一个字符串不匹配时由于已经知道之前遍历过的字符,那么我们就利用这些信息来避免暴力算法中的“回退”步骤 => 不希望 i 递减(i=t 操作)kmp:字符串匹配算法,用来找一个长字符串中出现了几次小字符串,并找到小字符串开始的位置。一棵Trie树,表示了关键字。

2024-03-26 19:47:29 487 1

原创 JS基础(下)函数+对象

let ob = {uname: '爸爸',alert(`${uname}好`)let op = new Object()//声明op是个对象。

2024-03-24 19:46:05 366 1

原创 JS基础(上)开始到数组

比较运算符:>,<,>=,<=,==,===左右两边是否值和类型都相等,!定义:let 数组名 = [数据1,数据2]// let arr = ['aaa', 'bbb', 'ccc',5]语法1:document.write('要出的内容')//document:文件,记录:向body输出内容,删:arr.pop()///arr.shift()///arr.splice(操作的下标,删除的个数)语法3:console.log('控制台打印')//console:控制台,log:正式记录,日志。

2024-03-16 19:51:36 970 1

原创 算法(5)双链表+模拟栈+中缀表达式(表达式求值)+模拟队列

设置两个栈,一个数字栈numStack,储存表达式中涉及到的数字,一个符号栈operatorStack(operator:运算符,操作员)储存表达式中涉及到的运算符。若当前字符为数字,则判断后续字符是否也为数字,若为数字则进行拼接,直到下一个为运算符为止,此时将拼接好的数字压入数字栈中。,需要进行收尾操作,如果与算法栈不为空,则依次从数字栈中弹出两个数据与当前栈顶的运算符进行运算。l数组和r数组的下标于e数组下标一一对应,l数组存该节点左边结点的下标(地址),调用方法:e[ l [ i ] ];

2024-03-16 15:37:07 362 1

原创 算法(4)——区间和,区间合并,单链表

如:a[1,10,200,3000,500000]共5个数,将其映射到从0开始的5个数,该过程被称为离散化。例如:[1,3][1,3] 和 [2,6][2,6] 可以合并为一个区间 [1,6][1,6]。如上图,定义两个数组 e[N] en[N],e[N]存数,en[[N]存地址(坐标)会将a数组中的重复元素移到a数组的最后面,并返回非多余元素的最后一个坐标。则需将数_1(n个)映射到从0~n-1的自然数上(将数_1存入数组)给定 n个区间 [li,ri],要求合并所有有交集的区间。

2024-03-08 20:16:34 927 2

原创 CSS(8)空间转换+动画

alternate-reverse 播放动画时,奇数次(1、3、5 等)反向播放,偶数次(2、4、6 等)正常播放。animation: animation:动画名称 动画时长 速度曲线 延迟时间 重复次数 动画方向 执行完毕时状态;alternate 播放动画时,奇数次(1、3、5 等)正常播放,偶数次(2、4、6 等)反向播放。动画属性:animation:动画名称 动画时长 速度曲线 延迟时间 重复次数 动画方向 执行完毕时状态;steps(3):分3步完成(配合精灵图完成精灵动画)

2024-02-22 19:04:50 881 1

原创 算法(3)前缀和+差分+双指针+位运算

则 (s[x2][y2]-s[x1][y1])(区域块) =S[x2,y2]-S[x2,y1-1]-S[x1-1,y2]+S[x1-1,y1-1];​ 两个数位与运算(&),先转二进制,从低到高按位运算,对于每个位而言,只有当两个位都为1时结果才为1,否则为0,在二进制转十进制,得到结果。​ 两个数位或运算(|),先转二进制,从低到高按位运算,对于每个位而言,只有当两个位都为0时结果才为0,否则为1,在二进制转十进制,得到结果。2的奇数次幂mod3=2(初等数论的同余问题)

2024-02-17 14:07:13 1017 1

原创 CSS(7) 字体图标+定位+平面转换+渐变

粘性定位:相当于是相对定位和固定定位的结合体,默认是相对定位,只要left,right,bottom,top任意一个属性达到满足条件,就自动转换成固定定位。3.子级向左上移动自身尺寸的一半(左,上的外边距为“-尺寸的一半”//transform:translate(-50%,-50%)概念:改变盒子在平面内的形态(位移,旋转,缩放,倾斜)又称为2D转换。使用场景:子级绝对定位,父级相对定位(子绝父相)或定位居中。2、父元素的高度大于设置粘性定位元素的高度。不脱(离)标(准流),即占位置,可相对原位置移动。

2024-02-11 14:51:57 853 1

原创 CSS(6)修饰属性

baseline 让元素的基线 与父元素文本的基线对齐。如果目标元素没有基线,例如 图片、表单输入框或其它置换元素,那么目标元素的底端与父元素的基线对齐(transition属性加给元素本身,例如:img->hover;使元素及其后代元素的顶部(底部)与整行的顶部(底部)对齐。为一个元素在不同状态之间切换的时候添加过度效果(慢慢变化)为all时:两个状态属性值不同的所有属性,都产生过度效果。(例如 图像和表单输入框) ,此属性不继承。设置整个元素的透明度(包含背景和内容)baseline:基线对齐。

2024-02-04 14:28:02 785 1

原创 CSS(5)(盒子模型下+浮动+flex布局)

3.特点:1.浮动后宽度不设置默认是自身内容撑开的大小 2. 浮动后元素脱离文档流(不占高度)会影响父元素和后面的布局 3. 任何元素都可以浮动,浮动后都可以配置width/height -- 在一行内显示有可以设置大小。设置方式:给父元素设置 display:flex,子元素可以自动挤压或拉伸( 当盒子宽度过大时,盒子会自动挤压或拉伸)。属性值:x轴偏移量,y轴偏移量,模糊半径,扩散半径,颜色,内外阴影(依次写)2.浮动目的:为了实现元素在一行显示并且可以设置大小。

2024-02-01 10:31:47 995 1

原创 算法2(逆序对,二分,高精度)

在归并排序中“做手脚“:在归并排序中,从最前面的两个数开始比较排序合并(趁机记录逆序对),然后第3,4个数排序合并,形成两个有序数组(=》左数组一定在右数组的左边),且左数组和右数组各自的逆序对已被记录,则仅需记录两数组的逆序对(以此类推,形成递归),即:对于左数组的某个数,右数组中要找到第几个数才能大于它,因此就有几个逆序对。二分法用于找边界,例如:负数···正数之间最贴近正数(负数)的负数(正数),总之一定是一边绝对满足一个性质,且另一边绝对不满足时,求边界的位置。二分分为整数二分和小数二分。

2024-01-26 21:27:21 690 1

原创 算法1(快速排序,快速选择排序,归并排序)

一个排序算法是稳定的,并不是说时间效率是稳定的,而是指:如果两个序列当中有两个数值是相同的,排完序之后,他们的位置如果不发生变化,那么这个排序是稳定的,如果它的位置可能发生变化,则排序是不稳定的(没什么卵用,但考试的时候有)先取分治点x,所有小于x的放左边,所有大于x的放右边,左右递归,单个被return,两个数比较p排序,然后以此类推。在递归排序的时候,分成的子序列是一步一步合并的,是从长度为一的子序列开始合并的,之后每一步的子序列都是有序的。,分成2个,左return,右return,合并,然后。

2024-01-14 15:23:25 406 1

原创 CSS(4)

从1到4,1有(20px)则1为20px,2无,则2和1一样,3无,则3和对面的1一样,4无,则4和对面的2一样。默认情况下,盒子(div)的宽与页面的宽是相等的,所以想设置版心居中,就得先把width先设置了,在加上margin: 0 auto;当上面的盒子有margin-bottom,且下面的盒子有margin-top时,margin会合并且表现出margin更大的一方。2.边框线:border,边框线粗细,线条样式(solid实线,dashed虚线,dotted点线)颜色;

2023-12-16 17:10:10 378 1

原创 CSS(3)

属性值(在no-repeat下):有left,center,right(水平方向),top,center,bottom(垂直方向)和两个数字(单位px),可正(向背景区移动)可负(向背景区外移动)。N=2n 偶数标签,N=2n+1/2n-1奇数标签,N=5n,5的倍数的标签;N=-n+5,第5个以前的标签。repeat-x(y),向x(y)轴方向平铺,x水平,y竖直。一行存在多个,尺寸由内容撑开(设置宽高无效),只能设置水平方向的外边距(margin),可设置外边距(padding),典型:span。

2023-12-10 16:37:25 427 1

原创 CSS(2)

通过对body标签的CSS修饰,且CSS中没有其他更高级的选择器,因此所有属于body标签的标签都拥有了font-size: 32px;虽然我也不知道伪类选择器是个什么,但确实有几个专门针对a标签选择器,且不属于以上选择器:link 访问前,visited 访问后,hover 鼠标悬停,active 点击时(长按观察);代码中的文字都被CSS修饰,至于为什么选中ul,但是li中的内容也被修饰,就与后文的CSS的继承性有关了。优先级的叠加计算原则:行内样式,id选择器个数,类选择器个数,标签选择器个数。

2023-12-03 18:40:13 478 1

原创 CSS(1)

font复合属性例如:font:italic 700 30px/2 楷体 的效果为倾斜,加粗,字号30px,行高30px*2,楷体,注:必须是font:是否倾斜 是否加粗 字号/行高 字体,字号字体必须写,否则不生效。如上,将第一个strong标签划分给了s1类,并对s1类进行CSS美化,于是第一个“文字”变红,第二个“文字”没有变红(font-weight: 400;font-family 设置字体,,,扩展:font-family可以写多个字体,每个字体用逗号隔开,执行顺序从左到右。

2023-11-26 19:47:47 868 1

原创 HTML(3),各种表单及运用

name和id同上,cols和aows控制长宽,但一般在CSS里设置,标签中间输入提示。经常偷看别人密码的小朋友都知道,看密码一定不能看屏幕因为屏幕看不出来什么。文本框,顾名思义,是用来输入文本的,但只能输入单行文本。如上,一个单纯的<input type="text">效果如上,当点击男后,在点击女时,男的选中状态会被解除。好了,内容就分享到这里,下次再见。

2023-11-19 20:09:00 258

原创 前端HTML(2)(VS code)

table></table>,内含属性border=“1”,(border=“1”)的意思是加边框线,且边框线的粗细为1px(1像素)table有子,其名为tr(行),一行一标签,tr也有子,th和td,th是表头标签,一个th一个表头单元格,td是内容标签,一个td一个内容单元格,表格大小随内容的增多而增大。为了让头(表头),身体(主要内容),脚(附加内容)区分开来,tr标签认了3个爹,table标签多了3个儿(tr标签变孙子了),分别是头:thead,身体:tbody,脚:tfoot。

2023-11-11 20:54:09 29

原创 前端HTML(1)(VS code)

如代码,html与head,body为父子关系,head和body为兄弟关系,其中title为网页标题标签,strong与hr标签将在下文揭晓。--叽里呱啦-->就成功将“叽里呱啦”注释掉,在VS code中,按ctrl+/即自动生成。标签关系分为父子关系(嵌套)和兄弟关系(并列),父级与子级要换行和缩进,见下面代码。ok,前端(1)就到这里了,感兴趣的小伙伴可以期待前端(2)<hr>,<br>为少有的单标签,作用分别为下滑线和换行。<p></p>为段落标签,有自动换行的效果。em i 为倾斜标签。

2023-11-05 18:38:54 112 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除