自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(74)
  • 资源 (1)
  • 收藏
  • 关注

原创 深入了解 JavaScript 中的 isNaN() 与 Number.isNaN() 和它们之间的差异

isNaN()和都有其用武之地,但要注意它们之间微妙的差异。选择合适的函数取决于您的使用情况,如果您需要更精确地检查一个值是否为 NaN,是更好的选择。如果您希望将非数字值也视为NaN,则可以使用isNaN()。了解这些差异有助于编写更可靠的JavaScript代码,避免由于类型转换而引发的意外错误。

2023-08-23 15:08:16 694

原创 精益求精:如何在 React 项目中巧妙运用 Redux 并优化项目结构

以上为在 `React` 项目中成功使用 `Redux` 并合理划分项目结构的步骤。`Redux` 提供了一种强大的状态管理解决方案,为您的项目带来了无限可能性。这将使应用程序更易于维护和扩展,为用户提供更好的体验。

2023-08-23 14:58:02 1169

原创 forEach 中的 return 到底有效吗?如何优雅地中断 forEach 循环?

尽管`forEach`中的`return`语句不会中断整个循环,但是可以采用异常抛出、`for...of`循环或`some`、`every`方法等方法来实现中断循环的效果。在使用时,根据场景选择合适的方法,确保代码的可读性和可维护性。

2023-08-23 14:35:18 4443

原创 React 事件代理 和原生事件绑定混用:你的选择会导致什么问题?

虽然`React`提供了强大的事件处理机制,但建议尽量避免混合使用原生事件和`React`事件。如果需要在`React`组件中处理事件,尽量使用`React`提供的事件系统,以确保一致性和性能。

2023-08-23 14:17:15 1194

原创 解密箭头函数:new 一个箭头函数会发生什么?

在JavaScript中,箭头函数是非常强大和有用的,但它们不适合用作构造函数。因此,尽量避免使用new来实例化箭头函数,以免引发错误。

2023-08-23 14:14:00 340

原创 究竟会不会阻塞?HTML文档渲染中的CSS和JS文件下载探秘

在HTML文档渲染过程中,CSS文件的下载不会阻塞DOM的构建,但会阻塞渲染。而JS文件的下载和执行会阻塞DOM的构建和渲染。因此,在前端开发中,优化JS文件的加载方式对于提高网页性能至关重要

2023-08-23 11:41:18 805

原创 穿越网络迷雾的神奇通道 - WebSocket详解

WebSocket是一项强大的前端技术,使得实时通信变得更加简单和高效。通过WebSocket,Web应用能够实现更多有趣和创新的功能,提供更出色的用户体验。希望这篇博客能帮助你更好地理解和应用WebSocket技术。

2023-08-23 11:20:57 1995

原创 揭秘HTTP的长连接和短连接,keep-alive的神奇作用

长连接(Keep-Alive)和短连接是HTTP中重要的连接方式,而keep-alive机制的使用可以显著提高性能,降低网络开销。在开发Web应用时,合理选择连接方式和充分利用keep-alive,将有助于提升用户体验和性能。

2023-08-23 10:59:09 255

原创 深入探讨空间复杂度:前端开发中的关键概念

空间复杂度是评估算法或代码内存使用的重要指标,尤其在前端开发中,考虑浏览器环境和性能限制更为重要。通过了解和优化空间复杂度,我们可以编写更高效、更节省内存的前端应用程序。

2023-08-22 19:18:37 236

原创 JavaScript 倒计时的时间偏差问题与解决方法

在实际项目中,根据需求选择合适的方法来解决时间偏差问题,以确保倒计时功能的准确性和稳定性。这些方法可以帮助你消除因为事件执行机制导致的时间偏差,使倒计时功能更加可靠。

2023-08-22 19:02:41 1309

原创 Async/Await 与 Generator:解析异步编程的巅峰对决

在选择异步编程方法时,async/await 和 Generator 都有各自的优势。async/await 更适用于通常的异步任务,提供了更好的可读性和错误处理。而 Generator 则在需要更细粒度控制的情况下发挥作用,但相对复杂一些。

2023-08-22 17:48:19 186

原创 解决 Canvas 中获取跨域图片数据的问题

跨域问题在使用 Canvas 处理跨域图片时可能会导致一些挑战,但上述方法提供了多种解决方案。你可以根据你的项目需求选择最适合你的方法,以确保 Canvas 正常处理跨域图片数据。

2023-08-22 17:19:04 1568

原创 为什么 React 的 useState 返回的是数组而不是对象?

虽然有时候我们可能更喜欢对象的形式,但 React 的设计选择了返回数组,这是基于灵活性、维护性和一致性的考虑。

2023-08-22 16:39:04 515

原创 HTTP1.0 和 HTTP1.1 的区别

HTTP1.1 相对于 HTTP1.0 带来了许多改进,包括持久连接、管道化、更强大的缓存控制、更多的状态码以及虚拟主机的支持。这些改进使得 HTTP1.1 更适合现代网络环境,因此在实际应用中更为常用

2023-08-22 14:18:39 628

原创 WebSocket 中的心跳是什么,有什么作用?

WebSocket 中的心跳是一种维持连接活跃性的重要机制。通过定期发送小型数据包,可以防止连接由于不活跃而关闭,同时也能检测连接的状态。

2023-08-22 11:48:58 1798

原创 内存泄漏:前端开发者的噩梦——内存泄露的原因及排查

内存泄漏是前端开发中常见的问题,但它并不是无法解决的。通过谨慎管理事件监听器,避免循环引用,使用浏览器开发工具和了解垃圾回收的工作原理,可以帮助排查和预防内存泄漏,确保应用程序保持高性能和稳定性。

2023-08-21 18:21:17 1722

原创 前端数据安全:保护你的应用不被黑客入侵

前端数据安全至关重要,不仅仅是后端开发人员的责任。通过使用 HTTPS、输入验证、防止 XSS 和 CSRF 攻击,以及安全的存储和传输,可以确保你的应用程序和用户数据受到良好的保护。数据安全是一个成功应用程序的重要组成部分。

2023-08-21 17:46:25 1097

原创 Vue 和 JQuery 的区别在哪?为什么 JQuery 会被 Vue 取代?

在现代 Web 开发中,Vue.js 提供了更多的优势和可能性。越来越多的开发人员选择放弃 JQuery 并转向 Vue 来构建他们的应用程序。

2023-08-21 17:37:57 984

原创 即时通讯:短轮询、长轮询、SSE 和 WebSocket 间的区别

四种常见的即时通讯实现方法:短轮询、长轮询、SSE 和 WebSocket。选择哪种方法取决于应用程序需求和性能要求。短轮询和长轮询适用于较简单的场景,而 SSE 和 WebSocket 更适用于需要高度实时性的应用程序。

2023-08-21 17:22:03 1434

原创 深入理解 HTTP/2:提升 Web 性能的秘密

HTTP/2 是一个强大的协议,可以显著提高网站性能。通过多路复用、二进制协议、首部压缩和服务器推送等特性,它使 Web 页面加载更快,用户体验更佳。

2023-08-21 17:10:11 1909

原创 JS 动画 vs CSS 动画:究竟有何不同?

JS 动画和 CSS 动画都有各自的优点和用途。理解它们的不同之处将帮助在项目中明智地选择使用哪种动画技术,以实现最佳用户体验。

2023-08-21 16:54:31 1362

原创 深入理解事件冒泡和事件捕获

理解事件冒泡和事件捕获对于处理复杂的交互非常重要。可以使用这些概念来创建更灵活和可维护的代码,同时避免不必要的事件冲突。

2023-08-21 16:45:03 241

原创 【基础学习笔记 enum】TypeScript 中的 enum 枚举类型介绍

枚举成员的值可以是字符串(字符串枚举,因为网上大部分只介绍常数枚举),需要注意的一点是,和数字值不同:字符串枚举没有自增长的行为,枚举成员必须设置初始值

2023-08-11 16:01:46 861

原创 vue3+vue-i18n 监听语言的切换

在切换语言的时候在几个页面中需要做出一些自定义的行为,所以需要监听语言的变化

2023-08-07 17:19:15 1350

原创 vue3使用iframe引入其他网站,vue-router路由跳转后页面空白,刷新之后才展示页面内容乌龙事件

vue3项目的页面A跳转到页面B时,页面B页面是空白的,需要手动刷新一下才能恢复正常,在页面A中用iframe引入了别的网站(后续事实证明,跟iframe没一毛钱的关系)

2023-08-02 16:25:45 2359

原创 vue3中使用Vue.Draggable的clone模式及遇到的坑

Vue.Draggable 拿来即用,没啥难以上手的,就是我在使用的时候遇到一个问题,就是当右边有重复的数据时,多次上下快速拖动右边的元素排序,会偶发一个bug:右边列表会自动多出一个数据,并且操作不了(没法删除也没法给它排序)

2023-07-18 11:25:12 2544 2

原创 vue3在v-for中设置动态ref无效及解决办法

实现在vue3的v-for中设置动态ref

2023-05-23 14:16:40 3541 3

原创 vue3传属性时报错 [Vue warn]: Component is missing template or render function.

vue3传属性时报错 [Vue warn]: Component is missing template or render function.

2023-03-24 18:18:11 10426 7

原创 FormData同时传输多个文件和其他数据

向 FormData 中添加新的属性值,FormData 对应的属性值存在也不会覆盖原值,而是新增一个值,如果属性不存在则新增一项属性值。

2023-03-02 19:40:17 3637

原创 浅析正则表达式+范围规则校验表达式+js从字符串中截取数字

需求:管理员在某个工单定义一个范围,比如成绩是0-100之间,或者调查问卷的年龄范围,然后工单流转后其他用户输入的数字收到管理员定义个范围影响,所以要求用正则校验管理员输入的范围规则是否合法,然后根据输入的范围,去校验普通用户输入的数值是否合法。

2023-01-18 18:11:48 1151

原创 vant picker选择器组件增加search搜索功能

[vant](https://vant-contrib.gitee.io/vant/#/zh-CN/picker)用在移动端的小项目还是挺合适的,但也有一些不符合需求的地方,比如它的picker选择器有个问题,就是没有搜索功能。其实或许可以自己组合:比如把picker与IndexBar 索引栏结合起来,或者把picker与search搜索功能组合。我用的是第二种方法:在picker上面加个搜索框,不过我用的van-field。

2022-10-14 19:39:32 7763 5

原创 echarts X轴和Y轴不对应(xAxis type time)的用法

平时项目里数据可视化展示用的大多是echarts或者highcharts, 一般折线图、柱状图、饼图最普通的用的多一点,最常见的就是这种一般x轴和y轴的数据一一对应,这是最常见的用法我就不说了。今天这篇文章记录一下x轴刻度和y轴数据不是一一对应的情况。

2022-10-14 13:46:46 4723 1

原创 vue3中hooks的介绍及用法

今天这篇文章是介绍一下vue3中的hooks以及它的用法。本文内容主要有以下两点:什么是hooksvue3中hooks的使用方法

2022-09-30 18:17:16 30575 4

原创 vue3中使用vue-i18n(ts中使用$t, vue3不用this)

vue3中使用vue-i18n(ts中使用$t, 没有this)

2022-09-29 19:14:32 18821 3

原创 window.open在 ios safari中打开新页面失败

window.open在 ios safari中打开新页面失败解决办法

2022-09-29 19:08:12 2222

原创 在vue3中使用arco design遇到的坑

理论上arco design这个UI框架用起来跟element ui/plus差不多,但其实里面还是有点坑的,并且有时候它这个避坑的解决办法并不在官方的文档中而在github的issues中。

2022-08-25 23:17:02 8052 4

原创 (CODE:3 MEDIA_ERR_DECODE) Playback cannot continue. No available working or supported playlists

videojs 播放m3u8 报错信息:VIDEOJS: ERROR: (CODE:3 MEDIA_ERR_DECODE) Playback cannot continue. No available working or supported playlists. 解决办法

2022-08-24 19:59:22 11721 13

原创 在vue3中使用videojs播放 .m3u8格式文件

最近项目中有做视频播放,但是由于视频量大,所以后端处理用的是把视频切片放在m3u8里给前端,然后前端自己播放。

2022-08-24 19:55:18 6994

原创 将返回的blob对象转为json数据

将返回的blob对象转为json数据

2022-08-18 16:47:39 3369

原创 vue3中使用echarts:legend点击事件问题、tooltip的trigger为axis tooltip不显示问题

vue3中使用echarts的坑:legend点击问题、tooltip trigger axis不显示问题

2022-08-11 11:25:48 3793 10

echarts使用demo

echarts使用demo

2017-04-11

空空如也

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

TA关注的人

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