-
Vue3的reactive通过Proxy实现响应式,支持深层监听、动态增删属性、数组索引赋值及Map/Set等结构,采用懒代理、依赖收集与触发更新闭环机制。
-
fieldset的核心作用是语义化分组而非美化,必须搭配legend(作为首个子元素)实现无障碍支持;disabled属性可原生禁用整组控件,CSS模拟无效且破坏可访问性。
-
用DevTools实时调试比手写或在线生成器更可靠,box-shadow参数顺序为h-offsetv-offsetblur-radiusspread-radiuscolor,易错点是混淆后两者,多阴影逗号分隔且从左到右渲染。
-
图片与文字浮动错位的核心原因是图片未限宽且脱离文档流,导致文字环绕异常;需限制图片尺寸(max-width:100%;height:auto)、统一浮动方向、清除父容器浮动(overflow:hidden或display:flow-root),并确保文字容器宽度充足、换行正常。
-
D3.js的核心是数据驱动DOM与SVG操作,通过enter/update/exit模式、比例尺、坐标轴、形状生成器等工具实现高度定制、响应式强、性能可控的可视化;适合需深度交互、动态更新或教学研究的场景。
-
JavaScript操作浏览器标签页的核心是window.open()和window.close(),但受限于安全策略,仅能由用户交互触发且无法控制非脚本创建的标签页。通过window.open()可打开新标签页并获取其引用,结合URL参数、window.opener、localStorage、BroadcastChannel等实现同源页面间的数据传递与通信。需注意弹窗拦截、跨域限制、安全风险(如opener泄露)及用户体验问题。移动端window.open()的窗口特性支持有限。此外,浏览器扩展API提
-
动态import()返回Promise,实现运行时异步加载模块,区别于静态import的预加载;当执行到import('./module.js')时才发起请求,结合Webpack或Vite可自动代码分割,生成独立chunk,用于路由级分割、功能懒加载或条件加载,首屏仅加载核心代码,降低初始体积,提升性能,且支持浏览器缓存复用。
-
navigator.sendBeacon是“最后一眼”日志唯一可靠选择,因其被规范明确保证页面卸载后仍尽力发送,不阻塞流程、不依赖事件循环,且兼容主流现代浏览器;但仅支持POST,payload须为Blob/FormData等合法类型,不可直接传字符串或JSON对象。
-
虚拟DOM通过JavaScript对象模拟真实DOM,利用Diff算法比较新旧节点差异,实现最小化更新。其核心是避免频繁操作耗性能的真实DOM,采用同层比较、类型变化重建、key优化列表等策略,将复杂度降至O(n),并通过批量更新提升渲染效率。
-
多行文字溢出显示省略号可通过-webkit-line-clamp实现,需配合display:-webkit-box、-webkit-box-orient:vertical和overflow:hidden使用,适用于现代浏览器,如设置3行截断则写-webkit-line-clamp:3,注意line-height固定以确保截断准确,兼容性方面IE不支持,Firefox需JavaScript辅助,可采用字符截断或服务端处理作为降级方案。
-
Headless浏览器自动化测试核心在于稳定性、可调试性及符合真实用户行为,推荐Puppeteer和Playwright而非Selenium;前者通过CDP精准控制加载时机、字体就绪、多浏览器兼容等,后者统一API覆盖Chromium/WebKit/Firefox并支持真实Safari预览版。
-
left:0没效果是因为元素未设置position属性,只有position为relative、absolute、fixed或sticky时,left才生效;需配合定位上下文使用,否则元素仍处于静态文档流中。
-
fetch不抛HTTP错误,必须手动检查response.ok并处理response.json()可能的reject;POST需配对JSON.stringify与Content-Type;跨域带cookie需前后端CORS头配合;超时需AbortController;空响应或非法JSON易致脚本崩溃。
-
用flex布局父容器可让多个grid容器横向并排,因grid-template-columns仅控制单个网格内部列,不影响容器间排列;inline-grid不稳定,嵌套Grid更适合同一布局内的功能区块划分。
-
瀑布流不能用grid-row跨行,因多列流布局不支持row-span;真实瀑布流需JS测各列高度、插入最短列,并通过设置height模拟跨行,同时必须处理图片加载导致的高度塌陷。