

新闻资讯
技术学院
history.pushState和replaceState的核心区别在于:pushState在历史栈新增记录,replaceState仅替换当前条目;前者支持返回上一页,后者不改变后退路径。
setTimeout只执行一次,适合防抖、延迟初始化等单次调度;setInterval重复执行但易导致时间不准、回调堆积、内存泄漏,需显式清除,精准轮询推荐用递归setTimeout实现。
vw/vh是视口单位,1vw=视口宽1%、1vh=视口高1%,不依赖父元素或字体大小;而%依赖父容器宽度,em依赖父元素font-size。
JavaScript迭代器是明确协议而非语法糖;对象需实现[Symbol.iterator]方法返回符合{value,done}结构的迭代器对象,Array、String等原生类型已实现该协议。
递归函数需满足三个必要要素:基础情形(终止条件)、递归情形(拆解为更小同类问题)、参数推进(确保趋近终止)。缺一不可,否则易栈溢出或逻辑错误。
HTML5语义标签默认display:block但无样式,常见“不显示”原因为父容器塌陷、浮动未清除、CSS覆盖display属性、隐藏属性或IE8兼容性问题。
Promise链的输入由上一个then()回调的返回值决定:若返回普通值则立即传递,若返回Promise则等待其resolve;catch仅捕获前序未处理的rejection;Promise.all并...
requestAnimationFrame+canvas预加载帧序列是最佳逐帧动画方案,支持精确时序、动态控制与交互;img切换适用于轻量静态场景;须避免CSS动画及setInterval等不可控方式...
XML需通过XMLHttpRequest或fetch加载并解析,注意同源、MIME类型、BOM及编码问题;提取文本必须用textContent而非innerText;推荐DOMParser+query...
Object.create是唯一纯粹设置原型而不触发副作用的方法,直接创建新对象并指定其[[Prototype]],不执行构造函数;常用于创建无原型对象、模拟继承等场景。