-
localStorage和sessionStorage的核心区别在于生命周期和作用域:前者持久保存、同源共享,后者仅限当前标签页、关闭即清空;二者均只支持字符串存储,存对象需JSON序列化,读取需反序列化。
-
ServiceWorker的核心能力是拦截并重写fetch请求,需显式监听且仅对HTTPS生效;其缓存策略、生命周期管理及业务语义适配需手动设计,无开箱即用的“银弹”。
-
本文详解如何通过调用天气API获取实时温度数据,并基于温度值自动切换网页背景颜色,涵盖异步请求、数据解析、条件判断与DOM操作全流程。
-
语义化标签需按内容角色而非样式选用:article用于可独立分发的内容单元,section用于同主题逻辑分组,aside用于非核心补充信息,nav专用于导航链接集合。
-
答案:JavaScript中通过Proxy拦截get和set实现深层数据监听,结合递归代理嵌套对象、WeakMap缓存优化,可自动追踪属性变化并触发更新。示例中createReactive函数利用Proxy捕获读写操作,访问时递归代理子对象,修改时执行回调;支持动态属性与数组方法监听,避免重复代理提升性能,适用于响应式系统构建。
-
手机Word无法显示HTML图片的根本原因是img标签src属性使用了相对路径、本地文件路径或非HTTPS远程链接,必须使用绝对、可公开访问的HTTPSURL,且需确保服务器返回正确的Content-Type和HTTP状态码。
-
this的指向在函数执行时确定,遵循“谁调用,this就指向谁”原则:全局环境中this指向window或global;普通函数调用时非严格模式下指向window,严格模式为undefined;对象方法调用时指向调用它的对象;构造函数中this指向新创建的实例;箭头函数无自身this,继承外层作用域;通过call、apply可立即指定this,bind可永久绑定this;事件处理中普通函数this指向绑定元素,箭头函数则继承外层。
-
使用固定margin、gap属性、clamp()函数和媒体查询等方法可实现CSS中元素间的最小间距效果,推荐在Flexbox或Grid布局中使用gap避免拥挤并解决margin折叠问题。
-
通过统一设置body与目标子元素(如.clock)相同的渐变背景,并确保背景不重复、高度撑满视口,即可实现视觉上无缝延续的渐变效果,避免因嵌套导致的断层或错位。
-
text-indent属性通过设置首行缩进影响换行,过大值会减少可用宽度导致文本换行,如容器宽200px时设180px缩进易触发换行;负值结合padding-left可实现悬挂缩进,如text-indent:-20px与padding-left:20px使首行左移、其余行右移;该属性仅对块级或inline-block元素有效,行内元素需转换显示类型才生效;JavaScript可通过屏幕宽度动态计算缩进值并实时调整,如监听页面加载与窗口变化事件实现响应式缩进。
-
模态框不必强制使用position:fixed,但绝大多数场景下这是最稳妥的选择;它能脱离文档流、不随滚动移动、始终相对于视口定位,而absolute易受祖先定位或transform影响导致错位。
-
Sticky定位需谨慎兼容:现代浏览器基本支持但IE全不支持,Safari15.4、Chrome56、Firefox32前版本亦失效;应先写fixedfallback再用@supports包裹sticky规则;注意iOSSafari对table子元素、transform等属性及overflow设置的限制;移动端降级需补padding防布局断裂;微信X5内核建议媒体查询强制降级。
-
WebCodecs的核心优势在于提供原生性能与硬件加速、细粒度帧级控制、低延迟本地处理、与Web技术栈无缝融合,从而实现实时视频滤镜与特效的高效处理。
-
柯里化是将多参数函数转换为依次接收单个参数的嵌套函数链,延迟执行直至参数齐全。例如add(1)(2)(3)逐步传参,核心通过闭包与fn.length判断参数是否完整,常用于参数预设、高阶函数构造和事件处理,提升复用与组合性,但不适用于不定参函数且可能影响性能和调试。
-
border-style:solid在HTML5中依然有效,其取值规则未变,实线边框发虚等问题源于subpixel渲染与像素对齐,而非属性失效;修复需结合transform、box-sizing等控制渲染行为。