-
最直接可靠的是Array.prototype.flat(),但默认只扁平一层,需flat(Infinity)彻底展开;兼容老环境或需自定义逻辑时宜用reduce+concat递归实现;扩展运算符配合while仅适用于已知深度;flatMap仅限map后单层扁平。
-
正确设置UTF-8编码、使用lang属性标识语言、通过dir属性控制文本方向、选用支持多语言的字体如NotoSans,并结合CSS处理特殊排版与断行,可实现HTML多语言文本的良好显示与兼容。
-
useInView的observer必须在unmount时显式销毁,否则导致内存泄漏;Vue指令中需在unmounted调用disconnect();原生IntersectionObserver必须调用disconnect()才能释放资源。
-
表单验证通过JavaScript在提交前检查数据有效性,首先构建包含用户名、邮箱、密码的HTML表单,接着绑定submit事件并阻止默认行为,调用validateForm()函数进行字段校验:用户名不能为空,邮箱需符合正则格式,密码长度不少于6位,任一失败则通过showError()显示错误信息并聚焦对应输入框,支持实时blur验证提升体验,最终验证通过后提交并清空表单。
-
浏览器通知API的权限管理通过Notification.permission查看状态(default、granted、denied),调用Notification.requestPermission()请求授权,需在用户有感知的操作中触发以提升授予率,避免频繁打扰。
-
childNodes返回包含所有类型子节点的NodeList(包括文本、注释节点),children仅返回元素节点的HTMLCollection;2.遍历时可用for...of或forEach,结合nodeType筛选或使用Array.from()转换后filter;3.querySelector/querySelectorAll提供更灵活的选择器筛选;4.注意实时集合的动态更新特性,避免遍历中删除元素导致的异常;5.大量操作时应转换为静态数组或使用DocumentFragment提升性能。正确选择API
-
:hover与:first-of-type冲突本质是优先级相同导致层叠覆盖;应合并为.list-item:hover:first-of-type确保语义准确且规避竞争。
-
原生JS实现tab切换最轻量,核心三步:标记tab按钮与内容区、用data-tab绑定对应关系、批量绑定事件并控制显隐;需正确管理active类、支持hash导航、兼顾touch事件防延迟,且多tab区域时data-tab值须全局唯一。
-
直接给width/height加transition会触发重排(reflow),导致卡顿,且height:auto无法插值;应改用max-height、transform或opacity等不触发布局的属性实现平滑过渡。
-
requestIdleCallback适合在浏览器空闲时发日志,用于非关键、可延迟的日志补报,如页面加载后埋点、错误兜底采集、用户行为聚合回传,需搭配timeout降级至setTimeout或sendBeacon以保障必达。
-
必须为盒子设置container-type:inline-size,否则@container和cqw均静默失效;cqw仅在inline-size容器内有效,需配合clamp()使用,且无降级方案。
-
float元素无法垂直居中,因其脱离文档流导致父容器无高度基准;可行方案为改用table-cell(需设height)或flex布局,或临时用transform微调。
-
核心是分块写入+合理建模+复合索引设计:按500–1000条分批提交事务,主键用业务ID并扁平化字段,用['dept','status']等数组创建复合索引支持多维查询,写入前校验ID去重。
-
答案:通过结合opacity、transform和transition属性,配合visibility控制显隐,可实现模态框的平滑过渡动画。1.默认设置opacity:0、visibility:hidden和transform:scale(0.8)隐藏并缩小模态框;2.添加transition定义opacity、transform和visibility的0.3s过渡效果;3.添加.show类时变为opacity:1、visibility:visible和transform:scale(1),触发动画;4.J
-
直接用atob()解密前端配置大概率报错或乱码,因混淆字符串常不满足Base64标准:需先补全=、还原-/_为+/、清理干扰字符;再将atob()结果转Uint8Array并用TextDecoder("utf-8")解码;最后挂载到window.__CONFIG__或异步注入并校验。