-
JavaScript内存泄漏排查核心是定位“本该被回收却一直存活”的对象,依赖ChromeDevTools内存面板拍快照对比,重点关注闭包、事件监听器、定时器、DOM引用及全局缓存导致的泄漏,并通过及时解绑、清空引用、清理定时器等修复。
-
CSS通过选择器组合实现逻辑判断,.class1.class2表示同时满足的AND逻辑,逗号分隔如.error,.warning表示任一满足的OR逻辑,结合使用可构建复杂条件筛选。
-
悬浮元素脱离文档流,flex容器不为其预留空间;应优先用margin或transform模拟悬浮,必要时用absolute需配合relative父容器和z-index控制层叠。
-
通过CSS的transition、transform和背景渐变实现文字动画,首先构建HTML结构,接着设置字体、颜色及transition过渡效果,悬停时利用transform实现上移缩放,结合background-clip:text实现渐变文字,最后可添加阴影增强立体感,整体提升交互视觉体验。
-
dialog标签是HTML5原生模态对话框语义化方案,需JS调用show()/showModal()激活,默认隐藏且无交互;样式须手动重置,backdrop仅showModal()触发且兼容性有限,需降级处理。
-
Express是基于Node.js的轻量级Web框架,专为构建API和Web服务设计,提供路由、中间件和请求响应处理能力,不内置数据库、鉴权或模板渲染,强调HTTP层的灵活控制。
-
video元素默认控制条无法换肤,必须禁用原生controls属性,通过HTML+CSS绘制控件并用JavaScript绑定播放、暂停、进度拖动等行为,同时注意跨浏览器兼容性与移动端交互细节。
-
通过CustomEvent和dispatchEvent可实现JavaScript自定义事件,用于组件间解耦通信。首先创建携带数据的事件对象,再分发到指定元素,其他模块通过addEventListener监听该事件并获取数据,适用于表单与图表等跨模块交互场景。
-
必须通过HTML表单提交机制发送网页输入数据:一、GET方法将数据拼在URL后,适合少量非敏感数据;二、POST方法将数据放请求体中,适合大量或敏感信息;三、AJAX可异步提交,提升体验;四、FormData配合fetch自动处理文本与文件;五、隐藏字段可注入额外参数但不可信。
-
background-image本身不控制布局,必须配合background-size、background-position和background-repeat才能实现精确控制;其中background-size是布局关键开关,常见值包括cover、contain、100%100%和auto100%。
-
HTML5箭头可通过五种方式实现:一、CSSborder绘制纯色三角箭头;二、SVG内联绘制可缩放矢量箭头;三、Unicode字符轻量嵌入;四、CSStransform旋转矩形模拟;五、clip-path裁剪定制形状。
-
浮动元素间距问题源于CSS盒模型与浮动机制的交互,常见于margin表现不一致、换行空白及折叠现象。应统一设置单侧外边距(如仅右侧),并通过清除浮动防止布局塌陷,推荐使用Flexbox的gap属性替代传统方案以简化间距控制。
-
JavaScript中对象用===比较只看引用是否相同,故需深比较;手写函数需递归对比属性,但要注意循环引用、NaN、-0等边界情况,生产环境推荐使用Lodash的_.isEqual等成熟库。
-
Flexbox子元素等高布局通过display:flex实现,容器默认align-items:stretch使子元素在交叉轴拉伸。示例:.container{display:flex}即可让.item等高,适用于卡片或多列布局。需注意避免float、固定高度或absolute定位导致失效。
-
::first-letter伪类可实现首字下沉,需作用于块级元素且首字符为可见符号;常用float、font-size、line-height等属性控制效果,兼容现代浏览器,中文同样适用。