- 博客(24)
- 收藏
- 关注
原创 LangChain.js LLM 入门实战:制作你的小智机器人
最近看到各种 AI 女友应用火得一塌糊涂,什么 Character.AI、星野之类的。作为程序员,当然要自己搓一个!角色扮演对话多模态输入(文字+图片)流式输出批量处理代码量不多,但该有的都有,适合入门练手。基础调用消息队列(System/Human/AI Message)多模态输入流式输出批量处理。
2025-12-24 11:41:44
309
原创 LangChain.js Agent 入门实战:从零搭建你的第一个智能代理
本文介绍了LangChain中的Agent功能,它通过将语言模型与工具结合,创建能够推理和解决问题的系统。Agent采用ReAct循环机制,模拟人类解决问题的思考过程。文章展示了Agent的基本使用方法,包括环境准备、基础调用、上下文配置(根据不同用户角色提供差异化回答)、响应格式化(使用zod定义输出结构)以及动态模型选择(根据问题复杂度切换不同模型)等核心功能。这些特性使Agent能够更灵活、高效地处理各类任务,同时确保输出结果的稳定性和可预测性。
2025-12-24 10:53:00
282
原创 「盛最多水的容器」:双指针移动逻辑的核心解析
在 LeetCode 数组类题目中,是一道经典的中等难度题。它不仅考察对数组的基本操作,更核心的是对 “双指针” 优化策略的理解。
2025-10-09 09:05:58
778
原创 前端性能优化之虚拟表格
当用户滚动容器时,通过滚动距离(scrollTop)除以行高(itemHeight),可以计算出当前可视区域的起始数据索引(startIndex)。无论数据源有多少条,页面始终只加载当前视图能容纳的少量 DOM 元素,通过监听滚动事件动态替换可视区域的数据,并调整元素位置,从而实现 “无限滚动” 的视觉效果,同时保持页面的流畅性。代码采用了模块化封装的方式,通过createScrollTable函数创建一个虚拟滚动表格实例,暴露init方法用于初始化,内部通过私有变量和函数实现核心逻辑,避免全局变量污染。
2025-09-12 16:00:38
878
原创 前端基础之数据类型转换
引用数据类型:Object (function Array Date RegExp Set(ES6) Map(ES6) 包装对象如String())基本数据类型: Number String Boolean Undefined Null BigInit(ES2020) Symbol(ES6)对象转换为原始值时会遵循一定规则,通常使用。:以下值转换为布尔值时为。
2025-09-05 23:43:57
211
原创 优雅降级的剪贴板复制方案:兼容新旧浏览器的实现
本文介绍了Web开发中实现文本复制功能的两种方法:现代ClipboardAPI和传统execCommand。ClipboardAPI是首选方案,通过navigator.clipboard.writeText实现异步复制,代码简洁且安全。对于旧版浏览器,采用execCommand作为兼容方案,通过创建隐藏文本域完成复制。文章提供了完整的实现代码,建议优先使用现代API,同时提供兼容方案,并强调用户反馈和权限处理的重要性。这种渐进增强策略确保在所有浏览器中都能提供良好的复制功能体验。
2025-07-23 11:05:15
315
原创 从HTML到DOM树:深入理解Web页面的核心结构
本文解析了Web开发中HTML与DOM的核心概念关系:HTML是静态文本源码,DOM规范定义了将HTML转换为可操作对象树的标准,浏览器据此生成内存中的DOM树结构。document对象作为DOM树的编程入口,提供标准API来访问和操作节点。文章通过转换示例和代码演示,阐明HTML与DOM树的动态映射关系,强调DOM操作仅影响内存状态而不会修改原始HTML文件。理解这些概念的关联对高效Web开发至关重要。
2025-06-11 20:01:31
1114
原创 本地开发解决跨域
在日常前端开发中,我们经常遇到这样的情况:本地运行开发服务器,但需要调用线上环境的API接口。传统的解决方案是为每个接口单独配置代理规则,但随着项目规模扩大,接口数量增多,这种手动配置方式变得极其繁琐且容易出错。这种方法可以一次性解决所有接口的代理问题,无需为每个接口单独配置。
2025-05-23 10:53:31
219
原创 js中字符串转数字的几种方法
方法适用场景是否严格转换(无效字符串返回NaN备注Number()单个字符串转数字是推荐通用方式数组中的字符串批量转数字是数组专用parseInt()提取字符串中的整数部分否(会忽略无效后缀)可指定进制提取字符串中的浮点数部分否(会忽略无效后缀)只能解析十进制运算符快速单个字符串转数字是行为同Number()Math相关方法转换后需要取整是(需先转为数字)通常配合Number()或使用。
2025-05-21 21:50:47
987
原创 css滤镜
CSS滤镜(filter)为我们提供了一种简单而强大的方式来对网页元素(特别是图片)应用各种视觉效果。本文将详细介绍各种CSS滤镜函数及其参数,并通过实际代码演示它们的效果。
2025-04-29 09:52:04
1132
原创 npm、pnpm、cnpm、yarn 和 bun 的全面对比:JavaScript 包管理工具指南
npm 是 Node.js 的默认包管理器,随 Node.js 一起安装。它拥有最大的包生态系统,是 JavaScript 开发的基石。选择合适的包管理工具应基于项目需求、团队熟悉度和特定场景。传统工具如 npm 和 Yarn 依然可靠,而 pnpm 在空间效率上表现出色,bun 则带来了令人兴奋的性能突破。随着 JavaScript 生态的不断演进,保持对这些工具的了解将帮助开发者做出更明智的选择。
2025-04-01 17:41:08
1904
原创 js队列的基础使用
(FIFO, First In First Out)的原则。在 JavaScript 中,我们可以使用数组来实现队列,也可以通过类来自定义一个队列。二叉树的层序遍历与广度优先搜索(BFS)有密切关系,由于bfs是按层级遍历所以不能前中后序遍历。队列(Queue)是一种常见的数据结构,遵循。
2025-04-01 17:22:05
199
原创 JS FileReader的使用
是 JavaScript 中的一个内置对象,用于异步读取用户计算机上的文件内容。使用二进制读取,读取的ArrayBuffer转换为blob文件,创建临时路径展示图片。readAsArrayBuffer 读取为二进制 内容为ArrayBuffer。onload 正确读取时触发,e.target.result为读取结果。readAsText读取文本 txt,html,json 内容为字符。readAsDataURL 读取图片 内容为base64编码图片。元素结合使用,允许用户选择文件并读取其内容。
2025-03-13 14:38:07
398
原创 uniapp解决输入框与键盘之间高度问题
在manifest.json中找到app-plus添加下面代码。:设置光标与键盘之间的间距为 140 像素。页面整体上移,导致顶部内容被顶出可视区域。键盘遮挡输入框,用户无法看到输入内容。解决方法在textarea使用3个属性。:自动调整输入框位置,避免键盘遮挡。:禁用输入框的默认内边距。
2025-01-16 14:58:03
1210
原创 宝塔面板安装+部署前端项目教程
宝塔面板是一款简单易用的服务器管理软件,支持一键部署网站、数据库、FTP等服务,适合新手和开发者快速搭建和管理服务器环境。前提需要云服务器,个人使用华为云服务器,并且远程终端。
2024-12-22 20:24:32
1148
1
原创 快速幂取模
(Fast Power)是一种用于。当需要计算一个数的较大指数幂时,普通的迭代计算方法会导致计算时间过长,而。快速幂算法的基本思想是将指,然后利用幂的性质进行计算。具体步骤如下:1.,例如,将指数幂n表示为二进制数b。2. 初始化一个变量res为1,作为结果的初始值。3. 从最低位开始,遍历二进制数b的每一位。• 如果当前位为1,将结果res乘以底数a。• 将底数a,即a = a * a。4. 将指数幂n右移一位,即n = n >> 1。
2023-11-03 11:37:35
227
原创 贪心算法合集1
1.是一种基于贪心策略的算法,,以希望最终能够 获得全局最优解。2.贪心算法通常,但不能保证能够得到全局最优解,只能得到近似最优解。,不考虑之后的选择可能带来的影响。
2023-11-03 08:45:22
113
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅