自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 阶段三:高级特性

【代码】阶段三:高级特性。

2025-03-26 23:25:04 195

原创 阶段二:面向对象编程

【代码】阶段二:面向对象编程。

2025-03-26 23:22:34 206

原创 阶段一:Java基础语法

【代码】阶段一:Java基础语法。

2025-03-26 23:19:33 651

原创 浏览器渲染原理与优化详解

减少关键资源数量:最小化阻塞渲染的资源(CSS、同步JS)减小关键资源大小:压缩、代码拆分、tree shaking缩短关键路径长度:优化加载顺序,并行下载避免强制同步布局:读写分离DOM样式属性减少重绘和回流:使用transform和opacity等属性。

2025-03-26 22:44:57 715

原创 前端性能优化

图片优化使用合适格式(WebP优于JPEG/PNG)响应式图片(srcset/picture)图片压缩工具懒加载原生属性Intersection Observer API实现适用于图片/iframe/组件等代码分割Webpack动态导入路由级代码分割缓存策略浏览器缓存(Cache-Control/Expires)Service Worker离线缓存CDN缓存构建优化文件合并压缩混淆。

2025-03-26 22:30:40 1335

原创 版本控制工具

【代码】版本控制工具。

2025-03-26 22:14:14 675

原创 包管理工具

是一种代码仓库管理策略,将多个相关的项目或模块放在同一个仓库(repository)中管理,而不是每个项目单独一个仓库。

2025-03-22 01:45:58 969

原创 关于回调函数

特性回调地狱Promise模块化代码结构嵌套多,难以阅读链式调用,扁平化同步写法,最直观独立函数,主逻辑扁平化错误处理需要在每个回调中处理通过.catch统一处理通过try/catch统一处理通过try/catch统一处理可读性差较好最好最好可复用性低中中高适用场景简单异步操作复杂异步操作复杂异步操作(推荐)复杂逻辑,需要拆分为模块。

2025-03-22 01:26:24 747

原创 React性能优化

性能优化是指通过减少不必要的渲染或计算来提高应用的性能。

2025-03-22 01:06:36 333

原创 React状态管理

通过这个例子,我们学习了如何使用和useReducer状态管理:将购物车的状态和逻辑集中管理。组件复用:商品列表和购物车组件各自独立,但共享相同的状态。代码结构清晰:将上下文、组件和主应用分离,易于维护和扩展。通过模块化的方式进行管理实现statestate和 actions单独抽离,模块化管理。使用简化了 Redux 的代码。在组件中通过和访问和操作状态。这种模式非常适合大型应用的状态管理,代码结构清晰,易于维护和扩展。😊。

2025-03-22 01:02:51 707

原创 React组件复用

组件复用是指将可复用的逻辑或 UI 提取到单独的组件中,以便在多个地方复用。这可以提高代码的可维护性和可读性,并减少重复代码。首先,我们需要将公用组件的逻辑和 UI 封装到一个单独的组件中。假设我们要封装一个通用的。假设你有一个登录页面和一个注册页面,它们都需要使用。封装好公用组件后,我们可以在其他组件或页面中通过。

2025-03-22 00:44:09 505

原创 React 事件处理

驼峰命名法:如onClickonChange。合成事件:使用封装原生事件。绑定方式:可以通过箭头函数或显式绑定this。

2025-03-22 00:35:58 459

原创 React学习(进阶)

以下内容属于 React 的高级主题,适合在掌握了基础知识(如组件、JSX、Props、State、事件处理等)之后深入学习。用于捕获子组件的 JavaScript 错误,并显示备用 UI。是一个函数,接收一个组件并返回一个新的组件,用于复用组件逻辑。用于在组件树中共享数据,避免通过 Props 层层传递。React 提供了一些方法来优化性能,避免不必要的渲染。是一种通过 Props 传递渲染逻辑的技术。用于直接访问 DOM 元素或组件实例。

2025-03-22 00:29:30 418

原创 React学习(基础)

React是 Facebook 开发的一个用于构建用户界面的 JavaScript 库。它采用组件化的思想,允许开发者通过构建可复用的组件来创建复杂的用户界面。核心概念组件化:React 应用由组件构成,组件是 UI 的基本单元。虚拟 DOM:React 通过虚拟 DOM 提高性能,减少直接操作真实 DOM 的次数。JSX:JavaScript 的语法扩展,允许在 JavaScript 中编写类似 HTML 的代码。

2025-03-22 00:21:01 422

原创 Es6新特性

是 ES6 引入的一个数组方法,用于用一个固定值填充数组的指定范围。扩展运算符将数组或对象的内容“展开”为独立的值。默认参数允许在函数定义时为参数设置默认值,如果调用时未提供该参数,则使用默认值。是一种对象,用于定义基本操作的自定义行为(如属性查找、赋值、函数调用等)。是一个对象,表示一个异步操作的最终状态(完成或失败)。模块化将代码组织为独立的单元,每个模块有自己的作用域。是一种异步编程的解决方案,用于处理异步操作的结果。都会生成一个唯一的值,即使传入相同的参数。是静态绑定的,继承自定义时的外层作用域。

2025-03-22 00:05:13 918

原创 前端模块化

ES Modules 是 JavaScript 的官方模块化标准,适合现代前端开发,广泛用于浏览器和 Node.js(Node.js 12+ 已原生支持)。现代构建工具(如 Webpack、Rollup、Vite)可以自动处理模块化方案之间的转换和兼容性问题。CommonJS 是 Node.js 默认使用的模块化规范,主要用于服务器端开发。它的特点是同步加载模块。ES Modules 导入 CommonJS。CommonJS 导入 ES Modules。

2025-03-20 23:09:13 481

原创 DOM 操作与事件处理

DOM 是浏览器将 HTML 文档解析成的一个树状结构,每个 HTML 元素都是一个节点(Node)。JavaScript 可以通过 DOM API 访问和操作这些节点。

2025-03-20 01:27:59 561

原创 关于前端路由

使用Routes和Route定义路由。支持动态路由、路由守卫和懒加载。适合 React 应用。

2025-03-20 00:48:01 437

原创 CSS3 基础布局技术与响应式设计

Flexbox适合一维布局,Grid适合二维布局。媒体查询允许你根据设备特性应用不同的样式,移动优先是一种设计理念,首先为移动设备设计样式,然后逐步增强为大屏幕设备的样式。

2025-03-20 00:08:06 1087

原创 WebSocket:开启实时通信的新篇章

WebSocket 是一种建立在单个 TCP 连接上的全双工通信协议,它允许服务器和客户端在建立连接后,可以随时向对方发送数据。客户端和服务器都可以主动发送消息,无需等待对方的请求。建立连接后,数据可以几乎实时地传输,避免了 HTTP 请求的额外开销。WebSocket 使用更轻量级的协议头,并且连接保持持久,减少了不必要的网络开销。WebSocket 作为一种高效的双向通信协议,为实时交互应用提供了强大的技术支持。它已经成为现代 Web 应用中不可或缺的一部分,并将继续在未来发挥重要的作用。

2025-03-19 23:46:32 891

原创 实现拖拽图片验证的基本步骤

【代码】实现拖拽图片验证的基本步骤。

2025-03-19 23:34:10 623

原创 关于前端指令

前端指令

2025-03-19 23:20:45 1030

原创 如何实现一个简单的 Promise

的粗糙实现,关键点在于。以上代码其实还需进行改进。

2025-03-17 16:22:23 401

原创 什么是防抖和节流,他们的应用场景有哪些

防抖:防止抖动,单位时间内事件触发会被重置,避免事件被误伤触发多次。代码实现重在清零。防抖可以比作等电梯,只要有一个人进来,就需要再等一会儿。业务场景有避免登录按钮多次点击的重复提交。(当事件被触发,设定一个周期延迟执行动作,若期间被触发则重新设定周期,直到周期结束,执行动作)节流:控制流量,单位时间内事件只能触发一次,与服务器端的限流 (Rate Limit) 类似。代码实现重在开锁关锁timer=null。节流可以比作过红绿灯,每等一个红灯时间就可以过一批。

2025-03-17 15:38:47 546

原创 网站开发中,如何实现图片的懒加载

懒加载:在当前网页,滑动页面到能看到图片的时候再加载图片。

2025-03-17 15:23:09 320

原创 http proxy的原理是什么

代理服务器会自动提取请求数据包中的HTTP请求数据发送给服务端,并将服务端的HTTP响应数据转发给发送请求的客户端,HTTP代理服务器使用的端口通常是8080。

2025-03-17 15:10:48 468

原创 Http状态码以及缓存机制

关于http状态码以及缓存机制

2025-03-17 14:45:31 680

原创 第三章 Pinia配置添加

Pinia与Vuex一样,也是Vue的状态管理库。作为Vuex的代替者,Pinia后来居上,已经成为了开发者首选的状态管理工具。

2023-09-05 16:00:37 412

原创 第二章 vue3+Ts项目路由配置

【代码】第二章 vue3+Ts项目路由配置。

2023-09-05 14:15:26 839

原创 第一章 Vue3项目创建

使用Vite创建Vue3项目

2023-08-16 14:36:20 192

原创 集成网易云信SDK,进行即时通信-Web(语音通信)

4.将所需的 SDK 文件,传入script标签的src中即可。在下文中使用 window 对象属性即可获取对 SDK 的引用。SDK 解压后可得到以下三个文件(配图仅以 v9.8.0 为例)选择自己开发的环境,选择下面的不含UI集成(根据自己需求选择适合自己的)这边自己是通过方式一进行添加,然后封装在工具中的ts文件中。3.将语音消息转化然后调用Nim中的发送语音消息API。以上就是简单的进行语音收发和获取历史消息记录。这边是没有语音通信权限的,可以申请免费试用。utils文件夹中的Nim.ts中。

2023-07-17 15:29:50 1488

原创 JS-SDK接入以及微信二次分享

如果是 html 的静态页面在前端通过 ajax 将url传到后台签名,前端需要用 js 获取当前页面除去’#‘hash部分的链接(可用location.href.split(’#')[0]获取,而且需要encodeURIComponent),因为页面一旦分享,微信客户端会在你的链接末尾加入其它参数,如果不是动态获取当前链接,将导致分享后的页面签名失败。如果这里获取到的 signature 和你得出的 signature 一致,就证明你的 signature 是正确的。

2023-05-29 20:23:00 3255

原创 登录及注册(动态码以及短信验证)

登录及注册

2023-05-19 11:42:49 243

原创 H5 及 web 页面微信授权登录流程

H5及web页面获取微信登录信息

2023-05-19 11:26:54 6687 1

原创 uniapp微信小程序授权手机号和授权用户信息

微信小程序授权手机号和授权用户信息

2023-03-02 15:48:30 525

原创 计算时间差

时间差计算

2023-03-02 14:50:52 135

原创 Js:获取数组对象重复属性值和数组对象去重

数组对象去重

2023-02-27 17:09:10 4770

原创 ES6 async函数语法

async await

2023-02-02 10:10:51 169

原创 ES6 Set 和 Map 数据结构

set和map的数据结构和使用

2023-02-01 17:52:39 119

原创 Promise 异步编程

ES6

2023-02-01 17:27:33 340

空空如也

空空如也

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

TA关注的人

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