-
::backdrop仅对调用showModal()的原生<dialog>元素生效,不支持div等自定义组件;其样式仅限background、opacity、filter等,不可设宽高定位;需用:root变量配合媒体查询实现主题切换;自定义模态框应使用显式遮罩div替代。
-
按钮点击后应立即设为加载状态:先修改textContent为“加载中...”并添加disabled属性,再发请求;请求结束后无论成败均需恢复文本和可用性;推荐用CSSclass切换状态而非直接操作文本,确保体验一致且易维护。
-
计算属性不能处理异步接口返回,因其设计为同步纯函数,依赖响应式数据实时计算并缓存结果;若引入async/await,则返回Promise而非实际值,破坏缓存与渲染逻辑;应改用watch监听变化并更新ref,再通过computed组合状态。
-
根本原因是box-sizing:content-box导致padding和border额外增加宽度;应全局设box-sizing:border-box,图片加max-width:100%;height:auto;,断点依内容临界点选em单位,字体用clamp()动态缩放。
-
必须用event.waitUntil(),否则浏览器可能在清理完成前终止ServiceWorker,导致旧缓存残留;它需包裹caches.keys()和所有caches.delete()的完整异步链,确保原子性清理。
-
DOM操作是JS与网页结构的唯一接口;选元素用getElementById(快、专用于id)或querySelector(灵活但慢、只返首个);改内容用textContent(安全)而非innerHTML(防XSS);append需传节点而非字符串;注意操作时机与事件监听器丢失。
-
描述符不锁定对象也不直接注册原子类,而是提供属性访问的细粒度控制;通过封装原子状态(如AtomicLong)、禁止直接赋值、暴露专用方法(如increment),实现关键字段的不可篡改性、可校验变更与线程安全读写。
-
::placeholder是现代浏览器标准写法,Chrome57+、Firefox52+、Safari10.1+、Edge79+原生支持;老版本需按需补前缀,但失效主因常是选择器不匹配、优先级不足或未显式声明color。
-
直接用:hover切换background-image会闪屏,因浏览器不预加载hover图,首次请求导致延迟;且background-image不支持transition,须用双层容器opacity动画或伪元素实现淡入。
-
SCSS更适合大型前端项目,因其变量作用域可控、@mixin逻辑可封装、编译期行为可预测;变量需显式@use导入防冲突,@mixin支持参数/条件/返回值,嵌套中&精确控制输出,三者共同保障样式长期可维护。
-
JavaScript原型链是对象继承的核心机制,通过[[Prototype]]隐式引用逐级向上查找属性和方法,最终指向null;构造函数的prototype属性决定实例的原型,ES6class底层仍基于此机制实现继承。
-
用Map实现拦截器逻辑优先级,关键是以业务语义驱动顺序:通过key嵌入数字权重(如"auth:10")或value绑定Pair<Priority,Interceptor>,配合排序后注册;支持路径路由、动态刷新与线程安全扩展。
-
解构赋值是JavaScript中按模式从数组或对象提取值的底层能力,支持对象/数组解构、嵌套提取、别名、默认值、函数参数解构及数组跳过/剩余等技巧,但不处理null/undefined。
-
visibility有三个值:visible使元素正常显示;hidden隐藏元素但保留空间;collapse用于表格,隐藏且不占空间。
-
锚点id必须合法唯一且严格匹配:全小写、连字符分隔、不以数字开头、无空格标点中文;h2/h3需同时处理并嵌套生成目录;href必须与id完全一致(含大小写);启用scroll-behavior:smooth实现平滑滚动。