-
fixed定位适合做真正“不随滚动移动”的全局UI元素,其基准是视口,脱离文档流且不受父容器transform等影响,但需注意iOS软键盘错位、AndroidWebView异常及overflow裁剪失效等问题。
-
Bun提供了基于ReadableStream的高效文件流式读取能力,配合TextDecoder和手动换行分割,可实现内存友好的逐行处理,避免加载整个文件到内存,完美替代Node.js中readline模块的用途。Bun提供了基于`ReadableStream`的高效文件流式读取能力,配合`TextDecoder`和手动换行分割,可实现内存友好的逐行处理,避免加载整个文件到内存,完美替代Node.js中`readline`
-
主线程卡顿主因是高频同步缓存操作与渲染强耦合。应通过Performance面板定位>50ms的LongTask,检查localStorage/JSON操作是否密集出现在ScriptEvaluation中,并用UserTiming打点量化耗时,单次parse超15ms即属高风险。
-
Symbol.hasInstance是用于自定义instanceof行为的内置symbol,需在构造函数上定义返回布尔值的函数,优先于原型链检查,仅影响instanceof。
-
模板字面量类型真正落地的价值在于编译期捕获路径参数类型错误并支持IDE自动提示合法路径;需结合条件类型+infer递归解析占位符,精确推导RouteParams为对象字面量而非Record,且须与useParams等Hook深度集成。
-
html5play函数根本不存在,它是对HTMLMediaElement.play()的误记或杜撰;正确做法是用URL.createObjectURL()创建临时URL并由用户手势触发play()。
-
linear-gradient()方向须用toside-or-corner格式(如tobottom),禁用旧语法top;色标需手动设百分比或像素值控制过渡节奏;透明色需配合background-color和border-style:solid才能正常显示。
-
HTML5原生不支持RTSP,需转码为WebRTC、HLS或MSE-FLV;低延迟选WebRTC,平衡选MSE+FLV,兼容优先选HLS;关键注意GOP、编码格式、音频编码及设备原始流质量。
-
能,但仅限于容器尺寸按比例约束,不缩放子元素;它维持宽高比(如16/9),解决高度塌陷与比例失真,适用于视频容器、等比卡片等场景。
-
可用Atomics.wait/notify在Worker间实现原子锁:以SharedArrayBuffer中Int32Array首元素为锁状态(0空闲/1占用),需跨域隔离、同视图访问;Worker循环等待并校验后加锁,执行临界区后释放并唤醒。
-
外部资源加载失败主因是file://协议安全限制,需用LiveServer等HTTP服务绕过;路径错误或onerror未防重会加剧问题;base64兜底可避免图片不显示。
-
HTML性能优化的核心在于减少资源体积、优化加载顺序及提升渲染效率,具体措施包括:1.精简代码,通过Webpack等工具压缩HTML、CSS和JavaScript;2.优化图片资源,使用WebP格式及响应式图片;3.利用浏览器缓存,合理设置Cache-Control和Expires;4.异步加载CSS和JavaScript,减少渲染阻塞;5.减少HTTP请求,合并文件并使用雪碧图;6.使用CDN加速静态资源分发;7.优先加载首屏内容,内联CriticalCSS。常见瓶颈有大体积资源、渲染阻塞、过多HTTP
-
可迭代协议要求对象实现Symbol.iterator方法,返回遵循迭代器协议的迭代器;2.迭代器协议要求对象具有next()方法,返回包含value和done属性的对象;3.二者共同支持for...of、扩展运算符等语法,使数组、字符串及自定义对象可被遍历。
-
用margin-right实现hover右移会抖动,因改变后父容器剩余空间变小,易触发换行或重排;更稳妥方案是用transform:translateX(),不触发重排、不影响文档流,配合transition和will-change可提升性能与体验。
-
contenteditable是布尔属性,使元素内容可编辑;几乎所有元素都支持,但input和textarea除外;需监听input和blur事件获取变化;粘贴等内容污染需主动清洗。