前端技术文章
-
String.prototype.codePointAt能准确获取Unicode码点,包括Emoji等增补平面字符;它按码点而非UTF-16编码单元计数,需配合Array.from或正则/./gu遍历以正确索引。397 收藏 -
外边距合并是CSS规范定义的垂直块级元素间距优化行为,并非bug;它使相邻或嵌套元素的margin-top与margin-bottom取较大值而非相加,虽利于段落排版,但在现代组件化布局中易致间距失控、父容器意外位移及响应式跳变。234 收藏 -
WebAssembly比JavaScript快,因其绕过解析和JIT编译,采用预编译二进制格式;具备线性内存与静态类型,实现零GC、高缓存命中率及无运行时类型检查。382 收藏 -
new运算符执行四步:创建空对象并设置原型;绑定this并执行构造函数;按返回值类型决定最终返回对象或新对象;新对象constructor指向构造函数。411 收藏 -
能,但需配合push才能构成完整栈行为;pop仅出栈,撤销重做需双栈协同,主栈存可撤销状态,重做栈存被撤销动作,且新动作前必须清空重做栈。423 收藏 -
使用伪元素和动画可实现平滑下划线效果:1.用text-decoration设置静态下划线但无法动画变色;2.用::after配合transition实现悬停展开和颜色过渡;3.用@keyframes创建流动、循环动画;4.用渐变背景加background-position实现彩色流动线。359 收藏 -
首帧延迟需前后端协同测量:前端记录play()到loadeddata的时间差,后端记录RTSP连接建立至首个RTP包发出的时间戳;WebRTC方案实测可压至300–600ms。366 收藏 -
CanvasRenderingContext2D实现像素级绘制需四步:适配设备像素比、全量或脏矩形清除、确保资源加载完成、用requestAnimationFrame驱动动画,缺一不可。274 收藏 -
直接用type="password"无法满足需求,因其本身不支持显示/隐藏切换,需配合按钮和JavaScript动态修改type属性,并处理兼容性、无障碍、焦点及样式等细节。130 收藏 -
退款邮件必须适配Outlook、Gmail等客户端的渲染限制,采用table布局、内联样式、绝对URL和脱敏字段,关键字段需与后端严格对齐,并经多端实测验证。369 收藏 -
CanvasdrawImage是HTML5中唯一能像素级拼接多图的原生方法,需预设画布尺寸、等待所有图片onload加载完成、处理跨域、手动计算坐标,并注意导出格式限制。184 收藏 -
::first-letter伪类可实现首字下沉,需作用于块级元素且首字符为可见符号;常用float、font-size、line-height等属性控制效果,兼容现代浏览器,中文同样适用。500 收藏 -
分代回收是V8引擎基于98%对象存活时间<10ms的实测统计事实落地的工程策略,将堆划分为新生代(Scavenge复制算法,快进快出)和老生代(Mark-Sweep/Compact,MajorGC耗时高),核心是顺应引用链生命周期实现短周期对象速死、长周期对象稳住。501 收藏 -
利用DeviceOrientation事件可获取设备在三维空间中的方向信息,通过监听该事件并处理alpha、beta、gamma三个轴的旋转角度,实现如游戏控制或地图定向等功能;需注意浏览器兼容性与权限请求机制,在现代浏览器中应使用PermissionsAPI申请授权,并对数据进行校准以提升精度,同时结合requestAnimationFrame优化性能,避免频繁触发影响体验。450 收藏 -
最推荐Flex布局(justify-content:flex-end),因其无塌陷、响应式友好;次选float:right需处理父容器塌陷;absolute定位适合脱离文档流场景;Grid的justify-self:end适合单元素精准控制。372 收藏