<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[S788977SS的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/S788977SS</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; S788977SS]]></copyright><item><title><![CDATA[ref和reactive及其原理]]></title><link>https://blog.youkuaiyun.com/S788977SS/article/details/151839354</link><guid>https://blog.youkuaiyun.com/S788977SS/article/details/151839354</guid><author>S788977SS</author><pubDate>Sun, 21 Sep 2025 16:36:55 +0800</pubDate><description><![CDATA[Vue 3的响应式系统基于Proxy实现，通过reactive()函数创建代理对象，在get/set陷阱中进行依赖收集和触发更新。ref()通过RefImpl类包装值，使用value属性访问，支持基本类型和对象的响应式转换。两者配合实现细粒度的数据响应：Proxy处理对象属性变化，Ref处理值替换场景。系统通过track/trigger机制维护依赖关系，相比Vue 2的Object.defineProperty方案，具有更好的性能和更全面的数据变更检测能力。]]></description><category></category></item><item><title><![CDATA[解构赋值的用法]]></title><link>https://blog.youkuaiyun.com/S788977SS/article/details/151591242</link><guid>https://blog.youkuaiyun.com/S788977SS/article/details/151591242</guid><author>S788977SS</author><pubDate>Thu, 11 Sep 2025 23:35:36 +0800</pubDate><description><![CDATA[为了防止结构时没有对应变量的值，造成后面使用该变量时报错，可以给其设置一个默认值，在传值后默认值就会被覆盖。防止调用 printUser() 时不传参数导致的错误，不传参数默认为{}let {name,age}={name:“张三”，age:22}在解构时也可以为其设置函数参数默认值和解构默认值。当对象没有 age 属性时，age 默认为 3。]]></description><category></category></item><item><title><![CDATA[框架前置课-AJAX]]></title><link>https://blog.youkuaiyun.com/S788977SS/article/details/137780024</link><guid>https://blog.youkuaiyun.com/S788977SS/article/details/137780024</guid><author>S788977SS</author><pubDate>Mon, 06 May 2024 20:55:54 +0800</pubDate><description><![CDATA[同步代码：实际上浏览器是按我们书写代码的顺序一步一步执行程序的，浏览器会等待代码的解析和工作，在上一行完成后才会执行下一行，这样是很有必要的，因为每一行新代码都建立在前面代码的基础上。XMLHttpRequest(XHR)对象用于与服务器交互，通过他可以在不刷新页面的情况下请求特定URL，这允许网页在不影响用户操作的情况下更新页面局部内容。异步代码：异步编程技术使程序可以在执行一个可能长期运行的任务的同时继续对其他的事件作出反应而不必等待任务完成，与此同时，程序也将在任务完成后显示结果。]]></description><category></category></item><item><title><![CDATA[css补充]]></title><link>https://blog.youkuaiyun.com/S788977SS/article/details/137090102</link><guid>https://blog.youkuaiyun.com/S788977SS/article/details/137090102</guid><author>S788977SS</author><pubDate>Fri, 12 Apr 2024 20:53:56 +0800</pubDate><description><![CDATA[size:渐变大小，即渐变到哪里停止，他有四个值：colsest-side最近边，farthest-side最远边，colsest-corner:最近角，farthest-corner:最远角。,red,blue)来改变，shape:渐变形状，ellipse表示椭圆，circle圆形，默认为ellipse,如果元素形状为正方形的元素，则ellipse和circle显示一样。4. linear-------单一属性: transition-timing-function: 检索或设置对象中过渡的动画类型。]]></description><category></category></item><item><title><![CDATA[web程序设计]]></title><link>https://blog.youkuaiyun.com/S788977SS/article/details/132677784</link><guid>https://blog.youkuaiyun.com/S788977SS/article/details/132677784</guid><author>S788977SS</author><pubDate>Fri, 15 Sep 2023 23:30:28 +0800</pubDate><description><![CDATA[在web服务器端加载并运行的Java应用程序具体运行在Servlet引擎管理的JVM上，Servlet是开发服务端应用程序的一个很好选择，Servlet与JSP结合使用，能提供更强大的服务器端功能JSP简介：JSP与PHP，ASP，ASP.NET等语言类似，运行在服务端的语言原理：JSP全称Java Server Pages,是一种动态网页开发技术，它使用JSP标签在HTML网页中插入Java代码，标签通常以结束。]]></description><category></category></item><item><title><![CDATA[js基础（三）]]></title><link>https://blog.youkuaiyun.com/S788977SS/article/details/130905605</link><guid>https://blog.youkuaiyun.com/S788977SS/article/details/130905605</guid><author>S788977SS</author><pubDate>Sun, 25 Jun 2023 21:58:22 +0800</pubDate><description><![CDATA[当我们拖拽一个网页中的内容时，浏览器会默认去搜索引擎中搜索，如果不希望发生这个情况可以通过return false取消。但这个对IE8不起作用
在IE8中可以通过为box1来设置捕获和释放捕获来完成，但chrome浏览器不支持setCapture()这个方法。这时我们需要判断浏览器是否支持。
鼠标的滚轮事件

onmousewheel鼠标滚轮滚动事件，会在滚轮滚动时触发，但火狐不支持该属性
在火狐中用DOMMouseScroll来绑定滚动事件，注意该事件需要通过addEventListener()函数来绑定]]></description><category></category></item><item><title><![CDATA[JS基础（三）]]></title><link>https://blog.youkuaiyun.com/S788977SS/article/details/130711077</link><guid>https://blog.youkuaiyun.com/S788977SS/article/details/130711077</guid><author>S788977SS</author><pubDate>Fri, 26 May 2023 23:40:47 +0800</pubDate><description><![CDATA[dom及事件的相关知



向父节点中添加一个新子节点


整体效果，创建一个广州节点，添加到#city下

将一个新建元素节点插入到指定元素节点前




使用innerHTML也可以完成	DOM的增删改的相关操作，可以二者结合使用
如：
添加删除记录-删除
以下面的例子展示：

添加删除记录-增加

上面创建tr元素有另外一个办法
注意这里别直接在tbody中添加tr，因为当写成往tbody中添加元素时，点击提交后虽然也会添加新的tr但是这时整个tbody中的tr都是替换了原先的tr的，这时为原先tr添]]></description><category></category></item><item><title><![CDATA[使用onscroll事件为滚动条滚动到最后时添加响应函数时出现火狐里面可以正常添加而chrome浏览器和egde浏览器不能的原因]]></title><link>https://blog.youkuaiyun.com/S788977SS/article/details/130814107</link><guid>https://blog.youkuaiyun.com/S788977SS/article/details/130814107</guid><author>S788977SS</author><pubDate>Mon, 22 May 2023 20:41:38 +0800</pubDate><description><![CDATA[上面通过inf.scrollHeight-inf.scrollTop==inf.clientHeight这个语句作为条件来判断时，在火狐上可以正常修改，而到了谷歌和egde上面当滚动条滚动到最底部时却没有任何效果。]]></description><category></category></item><item><title><![CDATA[web前端 JS基础（二）]]></title><link>https://blog.youkuaiyun.com/S788977SS/article/details/130473577</link><guid>https://blog.youkuaiyun.com/S788977SS/article/details/130473577</guid><author>S788977SS</author><pubDate>Tue, 16 May 2023 17:16:08 +0800</pubDate><description><![CDATA[正则表达式用于定义一些字符串的规则，计算机可以根据正则表达式来检查一个字符串是否复合规则，获取将字符串中符合规则的内容提取出来创建正则表达式：var 变量=new RegExp(“正则表达式”，“匹配模式”）正则表达式的一个方法:test()用这个方法可以用来检查一个字符串是否符合正则表达式的规则，符合则返回true,不符合则返回false//这个正则表达式用来检查一个字符串中是否含有a,严格区分大小写console.log(typeof reg)//用typeof来检查返回一个object。]]></description><category></category></item><item><title><![CDATA[web前端 js基础]]></title><link>https://blog.youkuaiyun.com/S788977SS/article/details/130447788</link><guid>https://blog.youkuaiyun.com/S788977SS/article/details/130447788</guid><author>S788977SS</author><pubDate>Wed, 03 May 2023 14:58:45 +0800</pubDate><description><![CDATA[数组也是一个对象它和我们普通对象功能类似，也是用来储存一些值。不同的是普通对象是使用字符串作为属性名的，而数组使用数字来作为索引来操作元素索引（index）：从0开始的一个整数数组存储性能比普通对象好，在开发中经常使用数组来储存数据var arr=new Array()//创建一个数组arr[0]=12;arr[1]=22;arr[2]=33;console.log(arr[1])//读取数组中的元素，读取到不存在的索引会返回undefind获取数组长度。]]></description><category></category></item><item><title><![CDATA[web前端 八]]></title><link>https://blog.youkuaiyun.com/S788977SS/article/details/128402841</link><guid>https://blog.youkuaiyun.com/S788977SS/article/details/128402841</guid><author>S788977SS</author><pubDate>Sun, 30 Apr 2023 00:21:38 +0800</pubDate><description><![CDATA[函数（function)也是一个对象函数中可以封装一些功能(代码），在需要时可以执行这些功能（代码）（函数可储存一些代码在需要时调用）。使用typeof检查返回function创建一个函数对象可以将要封存的代码以字符串的形式传递给构造函数var fun=new Function(" console.log('笔画');")封装到函数里的代码不会立即执行，而是会在函数调用时执行，且封装的代码按顺序执行。调用的语法：函数对象（）注:实际开发中很少使用构造函数来创建一个函数对象使用函数声明创建函数。]]></description><category></category></item><item><title><![CDATA[css基础知识]]></title><link>https://blog.youkuaiyun.com/S788977SS/article/details/128476451</link><guid>https://blog.youkuaiyun.com/S788977SS/article/details/128476451</guid><author>S788977SS</author><pubDate>Thu, 29 Dec 2022 17:31:25 +0800</pubDate><description><![CDATA[一个标签可有两个名字，用两个名字分别给他添加相同属性样式。则以style标签中靠后的名字添加的样式为主。顺序固定：a:link/visited/hover/active{}多个选择器对同一个元素设置样式时，如果属性冲突由选择器权重来决定。font-style中的oblique表示更倾斜有强调的意思。给a链接设置访问前/访问后/鼠标移入时/鼠标按下后的样式。给标签用class属性取一个名字，然后添加样式。群组选择器（1）和后代选择器（2）.名字｛属性：属性值｝一个标签的ID是唯一的。]]></description><category></category></item><item><title><![CDATA[HTML和CSS（一）]]></title><link>https://blog.youkuaiyun.com/S788977SS/article/details/128463503</link><guid>https://blog.youkuaiyun.com/S788977SS/article/details/128463503</guid><author>S788977SS</author><pubDate>Wed, 28 Dec 2022 17:41:32 +0800</pubDate><description><![CDATA[用户看得见的，第一时间交互的，像页面，视频等，]]></description><category></category></item><item><title><![CDATA[web前端 七]]></title><link>https://blog.youkuaiyun.com/S788977SS/article/details/128245753</link><guid>https://blog.youkuaiyun.com/S788977SS/article/details/128245753</guid><author>S788977SS</author><pubDate>Sat, 10 Dec 2022 20:59:32 +0800</pubDate><description><![CDATA[while语句在执行时，先对条件表达式进行求值判断，如果值为true，则执行循环体，循环体执行完毕后继续对表达式进行判断，如果为true则继续执行循环体，以此类推。prompt（）可以弹出一个提示框，该提示框中会带有一个文本框，用户可在文本框中输入一段类容，该函数需要一个字符串作为参数，该字符串将会作为提示框的提示文字。语句里嵌套其他的if…如果是true，则执行If后的语句，如果表达式的值为false，不会执行if后的语句。如果该值为true则执行if后语句，如果该值为false则执行else后的语句。]]></description><category></category></item><item><title><![CDATA[弹性布局，网格布局和js基础]]></title><link>https://blog.youkuaiyun.com/S788977SS/article/details/128071724</link><guid>https://blog.youkuaiyun.com/S788977SS/article/details/128071724</guid><author>S788977SS</author><pubDate>Sat, 03 Dec 2022 19:05:38 +0800</pubDate><description><![CDATA[flex布局，可简便，完整，响应式的实现各种布局
没加display：flex前

加了后
控制子项整体布局方向row 默认值显示为行。方向为当前文档水平流方向，默认情况是从左往右
row-reverse 显示为行，但方向和row属性值相反

用来控制子项单行显示还是换行显示
是 flex-direction和 flex-wrap的缩写，表示flex布局的flow流动特性。
第一个值表方向，第二个值表换行，中间空格隔开
决定了主轴方向（flex-direction设置的方向）上子项的对齐和分布方式

ite]]></description><category></category></item><item><title><![CDATA[web前段学习 第五部分]]></title><link>https://blog.youkuaiyun.com/S788977SS/article/details/128037597</link><guid>https://blog.youkuaiyun.com/S788977SS/article/details/128037597</guid><author>S788977SS</author><pubDate>Fri, 25 Nov 2022 23:22:03 +0800</pubDate><description><![CDATA[meta http-equiv="X-UA-Compatible"content=“ie=edge”>(主要针对ie浏览器，以更高版本渲染）2.区别strong和em具备语义化，而b与i不具备语义化（只有表现型态，无任何意义，在做网站开发时对一段文本进行强调时用strong或em）组合使用，pre元素可定义预格式化的文本，被包围在pre元素中的文本通常会保留空格和换行（其中的符号需要转译为)ruby标签定义ruby注释（中文注音或字符），rt标签定义字符（中文注音或字符）的解释或发音。]]></description><category></category></item><item><title><![CDATA[Web前端学习 第四部分]]></title><link>https://blog.youkuaiyun.com/S788977SS/article/details/127857458</link><guid>https://blog.youkuaiyun.com/S788977SS/article/details/127857458</guid><author>S788977SS</author><pubDate>Sat, 19 Nov 2022 09:37:21 +0800</pubDate><description><![CDATA[css position属性用于指定一个元素在文档中的定位方式。
top,right,bottom,left属性则决定了该元素的最终位置
position取值：width 必须有一个固定的宽
white-space:nowrap  不让内容折行
overflow:hidden  隐藏溢出的内容
text-overflow:ellipsis  添加省略号特性
css雪碧也叫做css精灵，是一种网页图片应用处理方式。它允许你将一个页面涉及到的所有零星图片都包含到一张大图中去加载
好处
可以减少图片的质量，网页的]]></description><category></category></item><item><title><![CDATA[wed第三部分 选择器、盒模型、继承、优先级、浮动等]]></title><link>https://blog.youkuaiyun.com/S788977SS/article/details/127637578</link><guid>https://blog.youkuaiyun.com/S788977SS/article/details/127637578</guid><author>S788977SS</author><pubDate>Fri, 04 Nov 2022 18:44:05 +0800</pubDate><description><![CDATA[box-sizing属性允许你以特定方式定义匹配某个区域的特定元素，取值为content-box(默认值）| border-box。：nth-of-type()，：nth-child（）(角标是从1开始的，1表示第一项，2表示第二项）css伪类用于像某些元素添加特殊的效果，一般用于初始样式添加不上的时候，用伪类来添加。}**解决方式是推荐的。提升样式优先级，非规范方式，不建议使用（不能针对继承的属性进行优先级的提升)通过逗号的方式给多个不同的选择器添加统一的css样式，来达到代码的复用。]]></description><category></category></item><item><title><![CDATA[web前段学习 第二部分]]></title><link>https://blog.youkuaiyun.com/S788977SS/article/details/127467277</link><guid>https://blog.youkuaiyun.com/S788977SS/article/details/127467277</guid><author>S788977SS</author><pubDate>Thu, 27 Oct 2022 14:29:31 +0800</pubDate><description><![CDATA[上面的一些常见属性如**checked,disabled（加上后该项不能被选择）,name,for与id（相对应，扩大了选择时点的范围）,multiple(加在标签后则那一选项可多选）,size（显示的选项数）,cols。复合的写法：通过空格的方式实现，复合写法有的是不需要关心顺序(但那要是个整体则要挨在一起）的。3.多个class样式优先级由css决定（head部分中的style标签中添加的css属性的先后），而不是class属性中的顺序。900 ，100-500是正常的之后是加粗的)]]></description><category></category></item><item><title><![CDATA[第一部分 web前端课程]]></title><link>https://blog.youkuaiyun.com/S788977SS/article/details/127416169</link><guid>https://blog.youkuaiyun.com/S788977SS/article/details/127416169</guid><author>S788977SS</author><pubDate>Thu, 20 Oct 2022 17:13:16 +0800</pubDate><description><![CDATA[两种编程语言，通常配合使用，是网站开发的基础语言:定义列表:定义专业术语或名词:对名词进行解释和描述。]]></description><category></category></item></channel></rss>