2026-06-11 01:08:52
以下是多个常用的JavaScript有趣用法总结(21~24/24),结合实用性与简洁性,涵盖数学计算、DOM操作、环境检测及函数式编程技巧:
21. 计算两个坐标之间的距离通过勾股定理计算二维平面中两点间的直线距离,适用于地图、游戏等场景。
function distance(p1, p2) { return Math.sqrt(Math.pow(p2.x - p1.x, 2) + Math.pow(p2.y - p1.y, 2));}// 示例:distance({x: 0, y: 0}, {x: 3, y: 4}) → 5关键点:
通过比较元素的边界坐标判断碰撞或重叠,常用于拖拽交互或弹窗定位。
function overlaps(a, b) { const rectA = a.getBoundingClientRect(); const rectB = b.getBoundingClientRect(); return !( rectA.right < rectB.left || rectA.left > rectB.right || rectA.bottom < rectB.top || rectA.top > rectB.bottom );}// 示例:overlaps(element1, element2) → true/false关键点:
区分前端浏览器与Node.js运行时,避免在服务端误用浏览器API。
function isNode() { return typeof process !== 'undefined' && process.versions != null && process.versions.node != null;}// 示例:isNode() → 在Node中返回true,浏览器中返回false关键点:
使用 reduce 实现多参数累加,支持数组展开或连续传参。
function sum(...args) { return args.reduce((a, b) => a + b, 0);}// 示例:sum(1, 2, 3) → 6;sum(...[1, 2, 3]) → 6关键点:
后续若积累更多实用技巧,将继续分享!