-
长英文不换行导致容器溢出时,应同时设置overflow-wrap:break-word和word-break:break-all,并配合max-width或width限制容器宽度,表格需table-layout:fixed,Flex项需flex-shrink:1和min-width:0。
-
customRef更适合防抖是因为它能手动控制track和trigger时机:输入时只track不trigger,防抖结束才trigger更新,避免中间值触发响应式副作用。
-
Proxy仅拦截明确的语言级操作(如get/set/deleteProperty),无法捕获Date/RegExp等内置对象的内部槽访问,且JSON.stringify、Object.assign等不触发trap;set返回false在严格模式下静默失败,throw则抛错;数组length变更不触发deleteProperty。
-
Vue中VNode核心类型有五种:文本节点、注释节点、元素节点、组件节点、函数式组件节点;文本节点仅含text属性,挂载时创建Text节点,更新时仅修改nodeValue;注释节点isComment为true,挂载和更新均只操作nodeValue且跳过diff;组件节点封装实例与上下文,挂载时创建实例并递归patch子树,更新时复用或重建实例。
-
可用video标签配合CSS实现背景效果:需加autoplay、muted、loop属性,设position:fixed/absolute与z-index:-1,用object-fit:cover铺满且保持宽高比,并设poster避免空白。
-
JavaScript代码压缩必须基于AST工具如terser,不可用正则粗暴删空格,否则会破坏语法结构、触发ASI错误或暴露源码隐患;正确做法是通过Webpack/Vite等构建工具集成terser,并谨慎配置mangling与sourcemap。
-
reduce是JavaScript数组将元素累积为单一值的方法,通过callback(含累计值acc和当前项cur)和可选initialValue实现;常用于聚合计算、结构转换、分组等,需注意初始值类型匹配与必返值。
-
flex-basis是初始主轴尺寸而非width,受flex-grow/shrink影响;设flex:00200px才锁死宽度,百分比需父容器有width,响应式推荐min-width+flex-wrap+flex:11auto。
-
:first-child选中父元素第一个子元素且类型必须匹配,而:first-of-type选中父元素下首个指定类型元素;二者功能不同,:first-child等价于:nth-child(1)。
-
锚点跳转失效主因是id与href匹配细节或DOM状态异常:id须全局唯一且不以数字开头;href需为合法hash格式;目标元素须已渲染且可见;可用scrollIntoView()替代或监听hashchange手动滚动,并用scroll-margin-top解决吸顶遮挡。
-
CommonJS模块在Node.js中同步加载,即阻塞式文件读取与立即执行,虽提升调试直观性但导致冷启动慢、缓存失效风险及循环依赖隐患;可通过延迟加载、合并小模块、预加载等优化规避瓶颈。
-
通过统一字体、优化输入框反馈、美化按钮和布局间距,可显著提升表单的美观性与用户体验。1.设置表单元素继承字体并规范基础样式;2.利用:focus增强输入焦点视觉反馈;3.自定义提交按钮样式并添加悬停效果;4.合理使用标签间距与flex布局实现清晰结构。保持整体风格一致即可让表单更专业。
-
边框描边动画本质是控制虚线显示节奏:stroke-dasharray设路径总长,stroke-dashoffset控制起始位置;需用getTotalLength()或JS动态计算周长,响应式下须监听resize重算;CSS变量可驱动stroke-dashoffset动画(Chrome110+/Firefox112+支持transition),但@keyframes中var(--offset)无效;SVG推荐显式path而非rect,避免圆角导致dash跳变;Safari性能差时宜改用mask+backgr
-
用repeating-linear-gradient画等距网格线最省事:通过两个渐变(0deg画横线、90deg画竖线)叠加,配合background-size:20px20px严格对齐周期,避免像素错位,兼容Chrome10+/Firefox16+/Safari6.1+。
-
reduce累加数字时必须显式传入初始值0,否则空数组报错或触发NaN;字符串拼接应传'';对象去重需用some而非includes;避免push修改原数组,改用展开语法;嵌套reduce优先用flat/flatMap替代。