- 博客(34)
- 收藏
- 关注

原创 前端算法题(Promise、扁平化、深拷贝、new)
摘要:本文分享了6个JavaScript实用函数实现: 对象路径设置函数setObjectValue,支持根据路径字符串创建嵌套键并赋值; 异步任务执行器taskExecutor,按优先级并发执行任务并分组输出结果; 自定义Promise.all实现,处理多个Promise并行执行; 分析Promise.all与Promise.allSettled的区别,并提供allSettled实现; 数组和对象扁平化函数,包括处理嵌套数组和对象的深层展开。这些函数涵盖了常见的JS开发场景,如异步控制、数据处理等。
2025-08-19 09:49:09
328

原创 React基础hooks-useState、useEffect、useRef、useCallback、useContext、useMemo、useReducer等
本文介绍了React Hooks的核心概念和使用方法,主要包括: useState:用于组件状态管理,支持惰性初始化和函数式更新,强调状态不可变性原则。 useEffect:处理副作用(数据获取、订阅等),提供清理机制,通过依赖数组控制执行时机。 useRef:用于访问DOM元素和保存跨渲染周期的可变数据,不会触发重新渲染。 其他核心Hooks: useContext:实现组件树数据共享 useMemo:优化性能,缓存计算结果 useCallback:记忆化回调函数,避免子组件无效渲染 useReducer
2025-08-12 14:31:31
1001

原创 CSS定位position、选择器等
文章摘要: CSS的position属性包含static、relative、absolute、fixed和sticky五种定位方式,分别对应不同的布局行为。内联元素与块级元素在显示方式、尺寸控制和边距影响上有显著差异。CSS选择器优先级遵循!important>内联样式>ID>类>元素的顺序,transform属性可以实现视觉缩放而不改变实际布局尺寸。要绘制0.5px的线,可以使用height:1px配合transform:scale(0.5),这种方法不会改变元素的盒模型尺寸。
2025-06-21 12:38:55
975

原创 JavaScript基础-数组/对象/Map/Set/字符串 常用方法
JavaScript 数组常用方法包括:`forEach`、`map`、等遍历方法,`push`/`pop`、`unshift`/`shift`、`splice` 等修改方法,以及 `slice`、`concat`。对象常用方法有:`Object.keys`、`values`、操作属性,`hasOwnProperty` 检查属性。Map 支持任意类型键的键值对存储,Set 用于存储唯一值。字符串可通过 [...str].reverse().join('') 翻转,用 includes 检查包含。
2025-06-03 18:54:56
1403
2
原创 vue3中安装tailwindcss
本文介绍了在Vue3项目中安装配置TailwindCSS的步骤:1)安装TailwindCSS v3及相关依赖;2)生成配置文件并修改content配置;3)创建CSS文件并添加Tailwind指令;4)在main.js中导入CSS文件。注意Tailwind v4可能导致配置错误,建议使用v3版本。配置完成后即可在项目中使用TailwindCSS。
2025-08-29 14:42:58
297
原创 vue2/3生命周期函数
Vue2与Vue3生命周期对比:Vue3的Composition API调整了生命周期钩子,如取消beforeCreate/created,改用setup()处理初始化逻辑,并新增了调试钩子onRenderTracked/onRenderTriggered。Vue路由(VueRouter)是管理URL与组件映射的工具,支持Hash和History两种模式,实现无刷新页面切换。Hash模式通过监听hashchange事件更新视图,History模式则利用HTML5 History API的pushState和
2025-08-13 11:18:37
959
原创 配置SSH公钥
本文介绍了配置SSH公钥的三个步骤:首先使用ssh-keygen -t rsa -C"你的邮箱"命令生成秘钥对(连按三次回车);然后用VSCode打开位于C:\用户\用户名.ssh\id_rsa.pub的公钥文件;最后将公钥内容全选复制后,粘贴到代码平台的SSH配置中。该流程适用于需要配置SSH密钥连接的开发环境。
2025-08-05 09:56:47
232
原创 React中Redux基础和路由介绍
my-app/├── public/ # 静态资源文件夹│ ├── index.html # HTML 模板│ ├── favicon.ico # 网站图标│ └── assets/ # 静态资源(图片、字体等)├── src/│ ├── assets/ # 存放项目中的静态资源(如图片、字体等)│ ├── components/ # 可复用的 UI 组件│ ├── hooks/ # 自定义 Hook│ ├── pages/ # 页面组件(对应不同的路由)
2025-07-11 16:48:11
908
原创 JS数字相关parseInt、Number、Math
Math.abs()方法,它支持处理负数、正数、零及特殊数值(NaN、Infinity)。此外,还可以通过三元运算符、位运算(仅整数)等方法实现。文中还介绍了数值转换(Number/parseInt/parseFloat)、判断方法(isNaN/isFinite)、Number对象方法(toFixed/toString)以及Math对象常用方法(round/floor/ceil/random等),并提醒注意精度误差和特殊值处理问题。
2025-07-02 17:53:13
595
1
原创 节流和防抖
• 高频事件:鼠标移动 mousemove、页面尺寸缩放 resize、滚动条滚动scroll 等等。②: 当鼠标每次滑动都先判断是否有定时器了,如果有定时器先清除以前的定时器。节流的核心就是利用定时器(setTimeout) 来实现。防抖: 单位时间内,频繁触发事件,只执行最后一次。③:如果没有定时器则开启定时器,记得存到变量里面。举个例子:王者荣耀回城,只要被打断就需要重新来。• 王者荣耀技能冷却,期间无法继续释放技能。单位时间内,频繁触发事件,只执行一次。④:在定时器里面调用要执行的函数。
2025-07-01 17:03:11
244
原创 前端学习笔记element-Plus
index="/article/channel" 配置的是访问的跳转路径,配合default-active的值,实现高亮。background-color="#232323"——背景颜色(29,160,176)router选项开启,el-menu-item 的 index 就是点击跳转的路径。导航菜单默认为垂直模式,通过将 mode 属性设置为。="$route.path"——配置默认高亮的菜单项。="#ffd04b"——激活颜色。el-menu-item 菜单项。来使导航菜单变更为水平模式。
2025-05-22 16:15:42
617
原创 vue3项目创建-配置-elementPlus导入-路由自动导入
本文介绍了两种创建Vue项目的方法:使用create-vue和Vite+Vue。create-vue方法通过npm init vue@latest命令创建项目,并支持手动选择功能。Vite+Vue方法则通过npm create vite@latest命令快速生成项目,利用Vite的ES模块导入方式提升开发效率。文章还详细介绍了如何在项目中引入和使用ElementPlus组件库,包括完整引入和按需导入的方式。此外,还介绍了使用vite-plugin-pages插件自动配置路由的步骤。
2025-05-13 22:54:41
1071
原创 python基础学习笔记(for/集合/字典/字符串/list)
这个函数会先计算底数的指数次幂,然后对模数取模。这在处理大数运算时特别有用,因为它可以避免中间结果过大导致的性能问题或溢出。函数将其他数据类型(如列表、元组等)转换为集合(注意:如果原数据中有重复元素,转换后的集合中不会包含重复元素)。的起始值设置为5(包含),结束值设置为0(不包含),步长设置为-1。类型,但有一个重要的区别:当尝试访问字典中不存在的键时,输出数字5, 4, 3, 2, 1,使用。,因为它会被解释为空字典,而应该使用。(注意:如果要创建空集合,不能使用。集合里面的元素是不可重复的。
2025-01-03 16:46:12
483
原创 Crow框架入门和后端文件操作
在crow中文件下载与返回静态资源基本上是一样的,只是在返回文件下载流时要设置Content-Type与Content-Disposition,若不设置在输出图片或文本文件时会被浏览器强制解析,而无法弹出下载框。若要实现文件的多线程分段下载,首先要从http请求头中获取Range信息,然后解析出该http请求所对应的文件起始位置和结束位置。在crow中返回的Range是一个字符串,需要自行进行字符串分割,然后将字符串转换为int。在上传文件时,获取附件名称时存在bug,无法准确的获取中文名称。
2024-12-27 11:00:54
1269
原创 使用Python将csv文件导入到influxdb数据库
OriginData_10这一列是没有数据的,上面CSV文件的截图是前面OriginData_1的数据太长显示到OriginData_10下面了。
2024-12-27 10:20:02
634
原创 Python进阶( bisect_right()/堆/nonlocal/pairwise/zip/map()
关键字用于在嵌套函数中引用外部函数的作用域中的变量。当一个函数内部定义了另一个函数(即内嵌函数或闭包),如果需要在内嵌函数中修改外部函数中定义的变量,就需要使用。函数会将提供的函数应用到每个可迭代对象的元素上,并返回一个 map 对象(在 Python 3 中是一个迭代器),该对象包含了对每个元素应用函数后的结果。它接受一个可迭代对象(如列表、元组等),并返回一个生成器,该生成器产生由连续元素组成的元组对。是 Python 中的一个内置函数,它接受一个函数对象和一个或多个可迭代对象作为输入。
2024-11-13 17:29:56
874
原创 Python combinations( )函数解析,leecode2306
返回的是一个迭代器,该迭代器生成所有长度为 `r` 的子序列,这些子序列是从输入的 `iterable` 中选取的,且顺序保持不变(即按照输入的顺序来)。最后,`ans * 2` 是因为每个有效的名称对 `(idea1, idea2)` 可以有两种表示方式:`(idea1, idea2)` 和 `(idea2, idea1)`。这一行中,`a` 和 `b` 分别代表从 `groups` 中选出的任意两个不同的字符串后缀集合,然后通过计算它们之间的。:一个整数,指定每次组合的元素数量。
2024-09-25 11:37:02
378
原创 ubuntu22.04.4安装node,npm,yarn
这条命令的意思是使用sudo权限来强制安装/var/cache/apt/archives/目录下的所有.deb文件。–force-overwrite是一个选项,它表示强制覆盖已经存在的文件,即使它们属于其他软件包。/var/cache/apt/archives/是一个目录,它存放了使用apt命令下载的软件包。dpkg是一个工具,它可以用来安装、卸载和管理Debian软件包(.deb文件)。*.deb是一个通配符,它表示匹配任何以.deb结尾的文件。-i是一个选项,它表示安装指定的软件包。
2024-07-21 23:01:31
972
原创 ubuntu报错error: failed to run custom build command for `openssl-sys v0.9.48`
ubuntu22.04.4运行Substrate项目时报错error: failed to run custom build command for `openssl-sys v0.9.48`网上查到的解决办法都是安装最新的 libssl-dev 包。但是问题并没有解决,重新cargo build --release依然报同样的错误。查到的其他方法:配置环境变量,也没有解决。
2024-07-20 19:20:15
1043
原创 VueCli创建项目报错Failed to get response from https://registry.npm.taobao.org/vue-cli-version-marker
Failed to get response from https://registry.npm.taobao.org/vue-cli-version-marker解决
2024-06-27 11:44:12
460
原创 微信公众号部署到阿里云服务器
将公众号代码上传到服务器,配置nginx端口代理,在对应目录运行项目即可。阿里云服务器配置安全组规则,80端口(http)linux 7.0以上默认安装firewalld。nginx配置⽂件(nginx.conf)⽬录。编辑nginx配置文件nginx.conf。软连接到系统的bin⽬录下。键盘按"i", 进入编辑模式。“Esc” 退出编辑模式。“:wq” 保存并退出。检查80端口是否开放。
2024-06-27 11:43:13
625
1
原创 leecode练习记录(动态规划)
即 ()+ (n-1)对括号。从子串长度 开始判断,先判断子串长度为2的是不是回文串,再判断长度为3、4、5...的子串。位与操作是二进制操作,它比较两个数字的每一位,只有当两个数字在该位上都是1时,结果才为1。i对括号串+j对括号串+新加的一对括号,得到n对括号串。代表生成括号的对数,请你设计一个函数,用于能够生成所有可能的并且。并获得b容器中的每一个值,但是a无法影响到b容器中的元素。
2024-05-22 16:44:37
343
原创 在Vue 3项目中使用 echarts
1. 在项目中或者2.在项目文件main.js全局也可在页面中单独引入使用:`import * as echarts from ‘echarts’4.在js代码块中引入需要用到的函数或者方法:5.定义一个的值,用于传递图表:7.在TS中创建一个初始化函数,一进入页面就会调用此函数;并在此调用定义的放图表的函数。
2024-05-19 21:02:54
3539
1
原创 杨辉三角--动态规划(学习笔记)
在「杨辉三角」中,每个数是它左上方和右上方的数的和。生成「杨辉三角」的前 numRows。给定一个非负整数 numRows。119. 杨辉三角 II。,返回「杨辉三角」的第。你可以优化你的算法到。
2024-05-14 16:10:18
339
原创 前后端API连调,接口开发规范(学习笔记)
/ 这里 '12345' 是 EmpID 的值,需要根据实际情况替换。会自动将JavaScript对象转换为JSON格式,并设置为请求体。是一个有效的 JavaScript 对象,这样你才能对其进行。// 给 formData 对象添加 EmpID 属性。注解来接收一个对象作为请求体时,前端需要将该对象转换为。作为 URL 的一部分,而不是作为查询参数(,并将其放在HTTP请求的body中。当后端使用@RequestBody。
2024-04-17 15:02:38
696
1
原创 后端在本地运行地址是localhost:8080,前端也在本地运行,要怎么请求后端接口(学习笔记)
获取资源,但由于跨源资源共享(CORS)策略的限制,请求被浏览器拦截了。尽管您收到了一个状态码为 200 的响应,这意味着服务器实际上成功地处理了请求并返回了数据,但浏览器因为缺少适当的 CORS 头而不会将响应数据暴露给前端 JavaScript 代码。已拦截跨源请求:同源策略禁止读取位于 http://localhost:8080/carbon 的远程资源。(原因:CORS 头缺少 'Access-Control-Allow-Origin')。注解在方法或类级别上启用 CORS。
2024-03-05 11:06:13
1774
1
原创 怎么利用css写出左边是标签右边是内容,内容换行对齐且不能在标签的下面
的值可以有一个到四个值,分别代表上、右、下、左的内边距。这些值的顺序是顺时针的,从上方开始,然后顺时针转到右边、下方、左边。属性用于设置元素的内边距。(微信小程序的开发)
2024-02-29 22:52:27
742
1
前端-React-hooks-useRef
2025-07-25
ES6面试题-84页【JavaScript ES6】基于ES6新特性详解:变量声明、函数扩展、模块化与异步编程技巧综述了文档的主要内容
2025-05-06
TA创建的收藏夹 TA关注的收藏夹
TA关注的人