-
WeakRef不能自动清理缓存,需配合FinalizationRegistry主动删除失效项;缓存值应为弱引用,键用普通Map管理,Blob/ImageBitmap需显式释放。
-
Object.preventExtensions()仅阻止对象后续新增自有属性,不影响已有属性操作;对拷贝副本无任何影响,需单独调用;它是浅层防护,不递归作用于嵌套对象。
-
浮动元素设pointer-events:none后点击能穿透到底层;但若其自身或任意祖先设了该属性,则整棵子树被跳过命中测试,子元素设auto也无效。
-
不存在“布局稳定性指数(LBS)”这一标准指标,实际应监控CumulativeLayoutShift(CLS),它是CoreWebVitals中衡量视觉稳定性的唯一官方指标;需用PerformanceObserver监听layout-shift类型,过滤hadRecentInput为false的条目并累加value,通过entry.sources或entry.affectedElements定位违规元素。
-
装饰器套在类方法上直接报错self丢失,是因为普通装饰器未显式接收并透传self(或cls),导致其被误作第一个位置参数吃掉;正确写法必须是defwrapper(self,args,kwargs)或defwrapper(cls,args,kwargs),否则引发TypeError或属性访问失败。
-
Object.seal是实现前端本地数据快照“结构稳定性”的轻量级手段,它锁定字段结构但允许修改属性值,兼顾服务端契约一致性与运行时内容更新需求。
-
父元素必须设position:relative,因为absolute子元素默认向上查找首个非static祖先作为定位参照;若父为static,则可能错位到body或html。relative不改变布局,仅声明自身为定位上下文。
-
grid-row-gap仅控制相邻行轨道间间距,不作用于容器首行顶边和末行底边;需配合padding或align-content实现上下视觉等距。
-
“闭包变量提升”并非标准术语,实为混淆变量提升(仅声明阶段预解析)与闭包延长变量生命周期(引用保持导致延迟回收);前端渲染中频繁创建闭包会加重内存压力,需通过编译优化与开发实践协同缓解。
-
CSS-in-JS中伪类需用库特定语法:Emotion/StyledComponents用&:hover,JSS用hover:{color:'red'};伪元素同理,&::before或before:{content:'"★"'};&不可省略,否则丢失作用域。
-
答案:可通过内置预览、配置默认浏览器、IISExpress或手动拖拽运行HTML文件。首先右键文件选择“在浏览器中查看”并选浏览器打开;其次在“工具-选项-Web项目”中设置默认浏览器以提升效率;若为完整Web项目,可添加至ASP.NET或空Web项目后通过IISExpress启动调试;最后也可直接将HTML文件拖入浏览器快速验证效果。
-
可定制迭代器是核心机制,通过统一接口、自动注册、按需组合与上下文管理实现解耦扩展:next/reset方法、type标识、动态注册、配置驱动装配、错误隔离及作用域上下文。
-
JavaScript原型链是对象继承的核心机制,通过[[Prototype]]隐式引用逐级向上查找属性和方法,最终指向null;构造函数的prototype属性决定实例的原型,ES6class底层仍基于此机制实现继承。
-
纯HTML无法实现可操作账单页,因其无数据存储、计算或交互能力;必须配合JavaScript实现增删、计总与本地保存,必要时还需localStorage或后端支持。
-
语义优先选<strong>,纯样式需求可用<b>;<strong>表示重要性(屏幕阅读器加重),<b>仅视觉加粗;现代HTML5推荐<strong>,注意避免嵌套、块级误用和滥用样式。