-
Symbol.metadata不存在于当前JavaScript标准中,ECMAScript规范未定义该符号,浏览器和Node.js均不支持;应使用自定义Symbol(如Symbol('role'))配合Reflect.metadata等API实现安全、唯一、可分析的元数据挂载。
-
text-overflow:ellipsis生效需同时满足三个条件:overflow为hidden/scroll/auto、white-space为nowrap、容器有确定块级宽度;缺一不可。
-
viewport标签必须正确设置width=device-width和initial-scale=1.0,否则vw/vh基于错误视口计算导致横滚、字体模糊、点击不准;需配合clamp()、vmin及内容溢出控制才能实现真正适配。
-
必须将perspective设在卡片父容器(如.card-container)上,值取800–1200px;子元素需设transform-style:preserve-3d和backface-visibility:hidden,并显式声明rotateY(0deg)起始态。
-
justify-content:space-between不铺满元素是因为它只分配主轴剩余空间,不改变子项自身宽度;需配合flex:1(等价于flex-grow:1,flex-shrink:1,flex-basis:0%)使子项等宽铺满,或改用CSSGrid实现更可靠的等分平铺。
-
答案:构建PWA离线优先应用需以离线为常态设计,通过ServiceWorker预缓存核心资源、采用CacheFirst和Stale-While-Revalidate策略保障静态资源与API可用性,结合IndexedDB持久化数据并维护待同步操作队列,利用BackgroundSync实现网络恢复后自动同步,同时优化UI提示让用户明确感知离线状态与数据暂存情况,配合WebAppManifest和HTTPS实现可安装可靠体验。
-
JavaScript重塑程序认知:从线性同步到事件驱动异步,直面状态管理与真实交互复杂性,培养组合思维与工程敏感度。
-
会乱码,但因字体和编码不匹配而非HTML不支持;需声明UTF-8、选用含IPA字符的字体(如NotoSans)、避免复制粘贴引入控制符,并用<span>而非<ruby>标注,配合字体栈与降级策略保障多端显示。
-
BroadcastChannel可实现同源多标签页实时通信,需统一频道名、同源、合理收发与清理;支持结构化消息与事件监听,注意关闭频道防泄漏,并为隐私模式提供降级方案。
-
应使用100dvh替代100vh,兼容老版本则结合focus/blur监听与min-height:100vh+height:100dvh层叠;fixed输入框避免scrollIntoView,改用scroll-margin-bottom或手动scrollTo;键盘收起用visualViewport.resize替代resize事件;flex布局需设height:100dvh及子项min-height:0。
-
RxJS操作符是纯函数,用于创建、转换、过滤、组合Observable。核心分类包括:of、from等创建类;map、switchMap、mergeMap等转换类,实现数据映射与流切换;filter、debounceTime、throttleTime等过滤类,控制值的输出频率;combineLatest、zip等组合类,融合多流数据;catchError、retry等错误处理类,保障流的稳定性。其中,switchMap常用于搜索防抖,mergeMap支持并发请求,debounceTime减少高频事件触发,
-
重复媒体查询导致维护困难,主要因断点修改需全局替换、样式分散难对齐、编译后冗余膨胀;应抽离断点为变量和@mixinrespond-to($breakpoint),由调用方传入内容,避免嵌套@media,并统一模块化管理与导入。
-
纯CSS弹窗动画需用visibility+opacity+transform组合,禁用display;原生dialog须弃用showModal()改用show()+自定义backdrop;触发动画前需offsetWidth强制重排;移动端须加will-change和translate3d启用GPU加速。
-
JavaScript错误处理需分层拦截、类型识别与明确抛出:try...catch不捕获异步错误、语法错误及未处理Promise拒绝;应使用Error子类区分业务异常,Promise链须显式catch,全局需同时监听error和unhandledrejection事件。
-
移动端多列网格布局应优先使用display:grid,因其通过grid-template-columns一行定义列数与响应行为,比Flexbox更直接稳定;Flexbox仅适合一维排列,强行用于多列易导致换行错位和高度不一致。