-
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实现平滑滚动。
-
<pr>不是合法HTML标签,浏览器会忽略或错误解析它,导致段落粘连;正确做法是使用语义化的<p>标签包裹每段文字,并确保标签拼写准确、嵌套合规。HTML中误用``标签导致段落无法正常分离的修复指南:``不是合法HTML标签,浏览器会忽略或错误解析它,导致段落粘连;正确做法是使用语义化的``标签包裹每段文字,并确保标签拼写准确、嵌套合规。在您提供的代码中,问题根源非常明确:<pr>是一个不存在的
-
TransformStream不能直接处理HTML字符串或DOM节点,因其仅工作于ReadableStream/WritableStream的字节块层面;必须先通过TextDecoderStream将fetch().body等原始流解码为字符串流,再接入自定义TransformStream进行逐块处理,而innerHTML或DOMParser是同步操作,流已结束,无法介入。
-
template.content是唯一能取到模板内容的只读属性,返回DocumentFragment;必须用cloneNode(true)或importNode克隆后才能复用,且需手动绑定事件、设置表单状态。
-
Bootstrap和Tailwind等CSS框架通过预设类快速实现卡片阴影与圆角,如Bootstrap的.shadow和.rounded-3,Tailwind的shadow-lg和rounded-xl,结合p-4、bg-white等类构建完整样式,提升开发效率。
-
使用UIkit可快速构建响应式导航菜单,首先通过uk-navbar创建基础导航结构,利用uk-hidden@m配合uk-toggle实现小屏幕下的汉堡按钮,点击触发Dropdown或Off-canvas折叠菜单,结合uk-dropdown或uk-offcanvas属性设置定位与动画模式,无需额外代码即可完成多端适配,关键在于掌握组件联动机制与断点控制。
-
JavaScript定时器通过setTimeout和setInterval实现,前者延迟执行一次,后者周期性重复执行,均返回ID供clearTimeout或clearInterval清除,常用于倒计时、轮播图等场景,需注意及时清理避免内存泄漏。
-
String.prototype.normalize()是解决Unicode等价性问题的核心方法,支持NFC、NFD、NFKC、NFKD四种标准化形式,分别适用于显示存储、底层处理、搜索匹配和文本清洗,但不处理简繁体等非等价字符。
-
手动递归比JSON.stringify更高效:前者支持早停、无序列化开销、复杂度O(n),后者需全量字符串化并扫描,内存与时间成本高。
-
poster属性不支持自动截取第一帧,必须用JavaScript主动截取并赋值;video.currentTime=0后截黑图需检查loadeddata事件、跨域设置、移动端延迟及编码特性。
-
纯CSS画笑脸需用border-radius+clip-path或伪元素分层:脸和眼睛须宽高相等+50%圆角,嘴用clip-path:ellipse()或border技巧配合overflow:hidden裁出弧形,全部使用rem或clamp()保证缩放无锯齿、高保真。