自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 vue2父子组件的生命周期

需要注意的是,在父组件渲染过程中,如果子组件也存在,则子组件的生命周期函数会在父组件对应的生命周期函数之后被调用。而在子组件销毁的过程中,子组件的生命周期函数会在父组件对应的生命周期函数之前被调用。

2024-05-07 18:10:20 491 2

原创 js垃圾回收机制

这可以帮助垃圾回收器更早地回收不再使用的对象,减少内存占用。当变量或对象不再需要时,垃圾回收器会将其标记为无效,然后在适当的时机清除这些无效的数据。JavaScript的垃圾回收机制是一种自动化的内存管理机制,它负责追踪和回收不再使用的内存资源,以便给其他变量或对象使用。标记阶段:垃圾回收器会从根对象开始,逐个遍历所有的对象,标记出活动对象(还在使用的对象)和非活动对象(不再使用的对象)。压缩阶段(可选):有些垃圾回收器会在清除阶段之后进行内存压缩,即将活动对象移动到一起,以便释放更多的连续内存空间。

2024-04-17 19:56:14 325 1

原创 webstrom常用快捷键

11. shift + alt + up: 块移动(if(){},while(){}语句块的移动)17. ctrl + '-/+': 可以折叠项目中的任何代码块,它不是选中折叠,而是自动识别折叠。1. ctrl + shift + n: 打开工程中的文件,目的是打开当前工程下任意目录的文件。Ctrl+/ 或 Ctrl+Shift+/ 注释(// 或者/*...*/ )Ctrl+E或者Alt+Shift+C 最近更改的代码。Ctrl+Shift+Alt+N 查找类中的方法或变量。

2024-04-16 19:59:26 478

原创 常见登录鉴权

后端通过验证后返回一个包含用户信息的令牌,前端保存起来进行后续请求的验证。第三方登录:用户可以选择使用第三方平台(如微信、QQ、微博)的账号进行登录,前端将用户的登录凭证(如openid)发送到后端进行验证。后端通过验证后返回一个包含用户信息的令牌,前端保存起来进行后续请求的验证。后端通过验证后返回一个包含用户信息的令牌(token),前端将这个令牌保存起来,以后的请求都需要带上这个令牌进行验证。在实现过程中,前端需要进行一些安全性的处理,如使用HTTPS协议进行通信,防止敏感信息的泄露。

2024-04-16 08:57:38 500

原创 vue2,Vue3中v-for,v-if区别

这是因为Vue 3引入了一项优化,即在编译阶段会根据v-if的条件进行静态分析,如果条件为假,则不会生成对应的虚拟节点,从而减少了不必要的渲染开销。在Vue 2中,v-for和v-if的指令可以同时使用在同一个元素上,它们的执行顺序是这样的:先执行v-for的循环,然后在每次循环中进行v-if的条件判断。在Vue 3中,如果需要对v-for的循环结果进行条件过滤,可以将v-if指令放在包裹的元素上,或者使用计算属性来筛选出符合条件的数据。

2024-04-12 18:32:52 779 1

原创 vue3中----watch和watchEffect的区别?

而在需要更精细地控制观察哪些属性或需要更好地调试和性能优化的复杂场景下,watch 可能更为合适。在某些情况下,watchEffect 的自动追踪功能可能会导致不必要的性能开销,特别是当组件中有大量响应式属性时。在 Vue 3 中,watch 和 watchEffect 都是用于观察和响应 Vue 组件中数据变化的工具,但它们之间存在一些重要的区别。相比之下,watch 允许你更明确地指定要观察的属性,因此在调试时可能更容易确定问题的来源。相比之下,watch 需要你手动指定要观察的响应式属性或计算属性。

2024-04-11 18:52:21 554 1

原创 无规则图形设置阴影

但是这种有个局限,当我们去给一个方形图片里面的内容设置阴影时,他设置出来只能是最外面img 的阴影。他是根据图像像素点设置的。

2024-03-29 19:53:07 126 1

原创 一道大厂经典面试题,你知道==隐式转换的规则吗

这样的话,系统想转为原始类型,则会调用a对象中的valueOf方法,每一次调用都会先返回a的值,在让a++。这样就形成的第一调用返回值为1,第二次调用返回值为2……如果让比较的数字不是这样连续的,可以在a对象中声明一个数组,数组里面写入这几个不规则数字,每次调用让数组的索引进行++操作。这道题中,原始如果a为原始类型,则会直接比较值,所以不能从原始类型的切入点去做,可以使用引用类型去写。引用类型会调用valueOf去转化他,我们可以在对象中写一个valueOf去改变他的转化。

2024-03-26 20:16:50 126

原创 面试题:变量交换的高级方式

你不知道的变量交换的方式

2024-03-25 20:11:48 220

原创 面试题:赋值运算符的底层步骤

第一步找到a.x的内存空间,没有x属性,所以js会在给a地址所指的栈内存中增加x属性。将计算结果,也就是这个新对象,作为右侧运算的数据,返回给a.x。接下来第二步,计算赋值右边的值,右边也是一个赋值则又开始走一次赋值运算符的步骤,深层是考了js的赋值运算符的底层步骤。4、返回整个表达式的结果为右侧运算的数据。4、返回整个表达式的结果为右侧运算的数据。1、找到变量 a 的内存地址,准备赋值。3、将右侧运算的数据放入到之前的地址中。3、右侧运算的数据放入到之前的地址中。2、运算右侧代码,得到要赋值的数据。

2024-03-21 18:04:15 745 1

原创 &&和||在开发中是怎么使用的

他们的返回值是确定结果的最后一个数据,&&先判断左边为真,在判断右边为真,两个都为真,返回第二次判定的数据4,|| 判断左边为真,有一个为真,则为真,所以他只进行了一次判定,返回2。如果obj中有方法fn,则判定为true,但&&运算符有一个为真还不够,继续判断右边的值,就会调用右边的函数,返回他的运算结果。如果obj中有属性a,则判定为true,||符号一真为真,不需要进行其右边值的判断,直接返回最后一次判定的数据obj.a。需求:请求一个对象,但不清楚对象里面有没有某方法,如果有则调用。

2024-03-12 11:44:42 489 1

原创 你真的了解js中的加法吗?

你真的了解js中的加法吗?彻底说透JavaScript中的隐式类型转换。

2024-03-11 19:56:37 1236

原创 原生js深度克隆(深拷贝)

利用函数递归实现引用类型中嵌套各种数据类型的深拷贝,无论嵌套多少层,都会完整的拷贝

2024-03-08 11:39:46 591 1

原创 使用CSS来实现平滑的滚动效果

滚动事件利用css属性变平滑

2024-03-07 16:42:20 645 1

原创 JavaScript利用递归实现数组求和

不适用常规方法,利用函数递归实现数组去重

2024-03-06 19:32:43 908 2

空空如也

空空如也

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

TA关注的人

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