-
CSRFToken防御需严丝合缝:服务端须绑定session动态生成唯一Token,前端须从DOM安全提取并手动携带至请求头或表单,且所有状态变更接口(含API、上传、GraphQL)均须校验,否则将触发403或失效。
-
详情层闪退主因是悬停区域不连续,应将图片与详情层置于同一相对定位父容器内,用opacity过渡显隐;箭头用伪元素边框实现并随位置调整方向;需兼顾图片占位、可访问性及移动端适配。
-
gap属性在Safari≤14.1、iOSSafari≤14.5及IE中完全不生效,被解析器直接忽略;可用:not(:last-child)配合单向margin模拟,但需注意文本节点、flex-wrap及百分比单位等边界问题。
-
纯CSS可实现3D文字效果:用text-shadow多层偏移模拟纵深(兼容性好但属视觉欺骗),或用transform-style:preserve-3d配合perspective与translateZ实现真3D分层(需字符独立包裹、父容器设置正确)。
-
最简实现左右分栏拖拽需用resize:horizontal+overflow:hidden+display:flex,左栏设min-width、flex-shrink:0,右栏flex:1;需ResizeObserver监听左栏尺寸变化,用contentRect.width获取准确宽度。
-
String.prototype.replace()是同步方法,无法直接await异步脱敏;需分阶段协作:先用replace提取敏感片段并收集位置信息,再交由异步任务批量处理,最后按序拼接结果。
-
align-items:stretch未使卡片高度一致,是因为父容器缺少显式高度、子项存在height/min-height/flex-shrink:0等限制,或内容撑开导致拉伸失效;需同时满足容器有高度、子项可伸缩、无收缩禁用才生效。
-
Vue编译器对v-bind="obj"采用静态分析与运行时代理协同优化:编译阶段标记为DynamicProps并剥离静态属性,运行时直接透传响应式对象、按需触发getter,更新时基于引用比较跳过未变更对象。
-
JavaScript性能优化需从代码拆分、内存管理、DOM操作等多维度入手,通过按需加载、减少回流重绘、避免内存泄漏、使用节流防抖及WebWorkers等手段,结合工具分析与细节调优,持续提升应用响应速度与用户体验。
-
trimStart()比trim更合适,因为它只移除字符串开头空白,保留末尾换行和内部缩进,避免误删代码格式所需的空行或缩进,语义明确、精准控制。
-
优先用inset()或circle()的相对单位(如50%、0.3rem),避免硬写px;polygon()坐标须按顺时针或统一逆时针排列,否则裁剪区域反向;Safari需双写-webkit-clip-path且慎用path()和transition。
-
viewport-fit=cover是iOSSafari(11.2+)中允许网页内容渲染到安全区外的声明,需配合env()函数使用,且必须与width=device-width、initial-scale=1.0共存才生效;安卓端完全忽略该属性。
-
模块联邦是Webpack5实现微前端的核心技术,允许运行时动态共享模块。主应用(Host)通过remoteEntry.js加载远程模块,如用户中心暴露的UserProfile组件,并通过shared配置避免重复打包React等依赖。需注意样式隔离、状态共享、容错机制及部署同步问题,适用于多团队协作的后台系统集成场景。
-
navigator.onLine仅反映链路层连通性,无法检测DNS故障、代理异常等“假在线”场景;需结合心跳检测(如fetch/healthz)与online/offline事件协同判断真实网络状态。
-
答案:现代Web开发中主流本地存储技术包括Cookie、WebStorage、IndexedDB、CacheAPI和FileSystemAccessAPI。1.Cookie存储容量小且每次请求自动携带,适合会话管理;2.WebStorage提供5~10MB键值对存储,API简单,适用于用户偏好等场景;3.IndexedDB为大容量结构化数据库,支持复杂查询,适合离线应用;4.CacheAPI专用于缓存网络资源,配合ServiceWorker实现离线加载;5.FileSystemAccessAPI可直接读写