全部内容
webpack3中使用uglifyjs-webpack-plugin压缩JS报错的解决方案

本文解决在webpack3环境下使用uglifyjs-webpack-plugin压缩JavaScript文件时出现的打包报错问题。通过对比webpack4与webpack3的配置差异,指出新版插件语法不适用于旧版构建工具,并提供通过指定安装低版本插件(如1.3.0)来恢复打包成功的解决方案。

10.22
热度 347
JavaScript实现HTML字符转义与反转义的两种方案

本文介绍在JavaScript中处理HTML特殊字符的两种常用方法。首先解析浏览器内置的DOM API实现HTML编码与解码,利用createElement动态创建元素获取innerHTML或innerText。其次提供基于正则表达式的通用转码与解码方案,涵盖<、>、&等常见符号的替换逻辑,并说明其在防止XSS攻击中的应用。

10.22
热度 590
JavaScript实现邮箱后缀自动提示与键盘交互功能

本文详细讲解如何使用原生JavaScript实现邮箱输入框的后缀自动提示功能。内容涵盖基础提示逻辑、针对包含@符号的输入优化前缀匹配、通过CSS实现鼠标悬停与点击交互、处理特殊字符转义以防止XSS攻击,以及利用键盘上下键和回车键进行高效选择。同时包含焦点管理与用户体验优化的完整代码示例。

10.22
热度 445
JS/HTML5游戏开发:普里姆算法生成随机迷宫详解

本文详解JavaScript游戏中常用的随机迷宫生成算法——普里姆算法。通过二维数组构建逻辑地图,利用随机访问与打通墙壁机制生成连通迷宫,并结合寻路算法实现角色自动移动。包含完整代码示例及在线测试工具,适用于RPG等游戏开发场景。

10.22
热度 322
JS/HTML5游戏开发:分离轴定理(SAT)碰撞检测详解

本文详解JavaScript中基于分离轴定理(SAT)的碰撞检测算法。通过电筒阴影类比解释原理,涵盖凸多边形与圆的检测逻辑,提供从法向量投影到重叠判断的完整步骤,并附带HTML5 Canvas实现代码与在线测试示例。

10.22
热度 164
JS/HTML5游戏开发:矩形包围盒(AABB)碰撞检测算法详解

本文详解JavaScript和HTML5游戏中常用的矩形包围盒(AABB)碰撞检测算法。通过最小最大顶点法与中心点半径法两种描述方式,解析碰撞判断逻辑与代码实现。对比两种方法的计算效率,指出轴对齐包围盒在无需旋转场景下的高效性与精度优势,并提供完整DEMO代码供开发者参考。

10.22
热度 544
JS/HTML5游戏碰撞检测:圆形包围盒算法详解

本文详解JavaScript与HTML5游戏中常用的圆形包围盒碰撞检测算法。通过比较两圆圆心距离平方与半径之和的平方,避免开方运算以提升性能。文章提供核心检测函数及完整Canvas示例代码,适用于需要高效处理大量物体碰撞的游戏场景。

10.22
热度 442
Egg.js 自定义请求级日志实现指南

本文详细介绍如何在 Egg.js 框架中自定义请求级别的日志格式。通过继承 egg-logger 的 FileTransport 类,绕过原生 Context Logger 对 formatter 参数的限制,实现包含时间、进程ID、TraceId 等字段的统一日志规范。

10.22
热度 504
JS/HTML5游戏像素碰撞检测算法详解

本文详解HTML5游戏中的像素级碰撞检测算法。该算法通过对比精灵重叠区域的RGBA透明度数据实现高精度判定,虽精确但效率较低。文中介绍了先利用AABB包围盒进行初步筛选以优化性能的策略,并分步解析了利用后台缓冲区获取像素数据、对比Alpha值判断相交的具体实现流程及注意事项。

10.22
热度 469
JavaScript位运算实战:奇偶判断、取整与数值交换技巧

本文深入解析JavaScript中的位运算机制,涵盖按位与(&)、或(|)、非(~)、异或(^)及左移、右移操作。通过具体实例展示如何利用位运算高效判断奇偶数、对浮点数向下取整、交换变量值以及计算2的n次方,同时辨析有符号与无符号右移在正负数处理上的差异,帮助开发者理解底层二进制操作以提升代码执行效率。

10.22
热度 475
JS/HTML5游戏开发:追踪算法原理与实现详解

本文详解JS/HTML5游戏中常用的追踪算法,包括基础的坐标速度分解算法与更自然的视线追踪算法。通过向量计算实现追踪者始终朝向目标移动的效果,提升游戏可玩性,并提供完整代码示例与在线测试工具。

10.22
热度 337
JavaScript数组与对象排序详解:从基础到字符串数字处理

本文详解JavaScript中数组排序机制。通过sort()方法及自定义比较函数,解决数字、字符串及数组对象的排序问题。重点解析当对象属性值为字符串形式的数字时,如何通过Number转换与isNaN判断实现正确的数值排序,避免ASCII码比较导致的错误。

10.22
热度 455

标签目录

JavaScript 核心技术JavaScript 基础JavaScript 函数与作用域JavaScript 对象与原型JavaScript 数组与数据处理JavaScript 异步编程JavaScript 项目实战
浏览器与 Web 开发DOM 与事件浏览器 API网络请求与通信浏览器数据存储前端调试前端安全
前端框架与应用VueReactNext.jsNuxt前端状态管理前端性能优化
TypeScript 与工程化TypeScript前端构建依赖管理自动化测试前端部署代码规范与重构
Node.js 后端开发Node.js 基础Node.js Web 框架数据库开发接口开发与鉴权服务部署与运维Node.js 性能优化
AI 开发与应用大模型 API 开发AI 智能体开发RAG 与知识库AI 编程工具AI 多模态应用AI 应用部署