-
要让CSS热更新生效,必须同时启用HMR(devServer.hot:true)、使用style-loader(非MiniCssExtractPlugin.loader)处理CSS、且开发环境禁用MiniCssExtractPlugin。
-
HTML5已废弃table的align="center",因其实际使表格变为inline-table导致居中不可靠;可靠方法是CSS设置margin:0auto并指定width(如width:80%或max-width:800px)。
-
JavaScript是事件驱动、基于对象与原型、单线程但支持异步的浏览器编程语言;初学应先理解事件绑定、对象属性方法、const/let作用域及异步概念,再渐进深入。
-
手动实现符合Promises/A+规范的Promise核心类需严格遵循状态机(pending/fulfilled/rejected)、then链式返回新Promise、值穿透、错误冒泡,并必须通过queueMicrotask或Promise.resolve().then进行微任务调度;同时需实现resolvePromise处理返回值,以及catch、resolve、reject、all等语法糖。
-
transition需状态变化触发,如hover,适用于简单属性渐变;2.animation通过@keyframes定义关键帧,可自动播放,支持复杂动画序列;3.animation提供更精细的播放控制,如延迟、循环、方向等;4.两者兼容性良好,但建议优先使用transform和opacity以提升性能。
-
nonce是CSP中允许内联脚本的安全机制,需服务端动态生成并严格匹配响应头与script标签中的值;不支持meta标签设置,且对eval和内联事件无效。
-
<picture>必须包含末尾的<img>且带src属性,否则图片不显示;浏览器按顺序匹配<source>的type和media,最后回退到<img>的src作为fallback。
-
HTML5常用标签可通过五种方法高效记忆:一、语义化分组归类法;二、词根联想记忆法;三、结构树形图谱法;四、高频场景替换法;五、代码片段速查卡片法。
-
JavaScript正则表达式是匹配、查找、替换文本模式的工具,支持字面量(/abc/)和构造函数(newRegExp("abc"))两种创建方式,提供match、test、replace、split等方法及g/i/m修饰符和\d、\w、.等元字符。
-
<picture>+<sourcetype="image/webp">是唯一可靠写法,因浏览器在HTML解析阶段依type属性协商格式,现代浏览器支持时加载WebP并跳过<img>兜底,旧版IE/Safari则忽略<source>直接使用<img>降级。
-
懒加载能提升首屏速度,但仅适用于非首屏资源;对首屏主图误用会导致CLS或空白占位符。loading="lazy"最简但兼容性有限,IntersectionObserver更可控,关键资源应优先使用preload或fetchpriority。
-
background-image不阻塞HTML解析和DOM构建,但会阻塞load事件,并可能延迟首次绘制导致“闪白”;需通过<linkrel="preload">单独预加载、image-set()或媒体查询响应式加载、伪元素+IntersectionObserver懒加载来优化。
-
JavaScript执行栈是后进先出的栈结构,用于管理函数调用顺序:函数调用时压入执行上下文,执行完毕即弹出;全局上下文最先入栈、最后出栈;报错信息中的“at”源自栈顶调用链;异步回调需待栈空后由事件循环调度入栈。
-
本文详解JS游戏中碰撞检测响应异常(过早、过晚或不触发)的根本原因,聚焦getBoundingClientRect()的正确使用、坐标空间统一、实时边界获取等核心实践,并提供可直接运行的修复代码。
-
WebAudioAPI提供高级音频控制,支持可视化、自定义音效、3D定位与实时录音。通过AnalyserNode实现频谱绘制,AudioWorklet进行非阻塞音效处理,PannerNode结合AudioListener模拟空间音效,再集成MediaStreamAudioDestinationNode与MediaRecorder实现带效果的音频录制,构建高性能浏览器音频应用。