-
BroadcastChannel可实现同源多标签页实时通信,需统一频道名、同源、合理收发与清理;支持结构化消息与事件监听,注意关闭频道防泄漏,并为隐私模式提供降级方案。
-
会乱码,但因字体和编码不匹配而非HTML不支持;需声明UTF-8、选用含IPA字符的字体(如NotoSans)、避免复制粘贴引入控制符,并用<span>而非<ruby>标注,配合字体栈与降级策略保障多端显示。
-
JavaScript重塑程序认知:从线性同步到事件驱动异步,直面状态管理与真实交互复杂性,培养组合思维与工程敏感度。
-
答案:构建PWA离线优先应用需以离线为常态设计,通过ServiceWorker预缓存核心资源、采用CacheFirst和Stale-While-Revalidate策略保障静态资源与API可用性,结合IndexedDB持久化数据并维护待同步操作队列,利用BackgroundSync实现网络恢复后自动同步,同时优化UI提示让用户明确感知离线状态与数据暂存情况,配合WebAppManifest和HTTPS实现可安装可靠体验。
-
justify-content:space-between不铺满元素是因为它只分配主轴剩余空间,不改变子项自身宽度;需配合flex:1(等价于flex-grow:1,flex-shrink:1,flex-basis:0%)使子项等宽铺满,或改用CSSGrid实现更可靠的等分平铺。
-
必须将perspective设在卡片父容器(如.card-container)上,值取800–1200px;子元素需设transform-style:preserve-3d和backface-visibility:hidden,并显式声明rotateY(0deg)起始态。
-
viewport标签必须正确设置width=device-width和initial-scale=1.0,否则vw/vh基于错误视口计算导致横滚、字体模糊、点击不准;需配合clamp()、vmin及内容溢出控制才能实现真正适配。
-
text-overflow:ellipsis生效需同时满足三个条件:overflow为hidden/scroll/auto、white-space为nowrap、容器有确定块级宽度;缺一不可。
-
Symbol.metadata不存在于当前JavaScript标准中,ECMAScript规范未定义该符号,浏览器和Node.js均不支持;应使用自定义Symbol(如Symbol('role'))配合Reflect.metadata等API实现安全、唯一、可分析的元数据挂载。
-
模块模式通过闭包实现子应用JS作用域隔离,需配合沙箱、DOM/CSS隔离及规范卸载机制才能有效防止微前端全局污染。
-
JavaScript模块化主流规范有CommonJS和ES6Module两种广泛落地,前者用于Node.js默认环境,后者获现代浏览器及新版Node原生支持;AMD/CMD已基本淘汰。
-
::first-letter伪类可实现首字下沉,需作用于块级元素且首字符为可见符号;常用float、font-size、line-height等属性控制效果,兼容现代浏览器,中文同样适用。
-
Webpack是一个静态模块打包器,从入口文件递归解析import/require等模块依赖,输出浏览器可运行的bundle;需通过loader(如css-loader、style-loader)和plugin扩展能力,不直接编译或压缩资源。
-
JavaScript需要Proxy,是因为它提供了唯一原生、细粒度、可编程的方式拦截和自定义对象基本操作;而Object.defineProperty仅能静态劫持已存在属性,无法捕获新增/删除属性、in操作、数组索引访问等。
-
HTML跨浏览器适配靠三件确定性动作:DOCTYPE顶格声明、normalize.css统一默认样式、用特性检测而非UA判断JS能力;漏掉任何一件,IE或旧Safari中CSS和JS均可能失效。