-
JavaScript迭代器是支持for...of等语法的协议机制,核心为返回{value,done}对象的next()方法;需同时满足可迭代协议(含[Symbol.iterator]方法)和迭代器协议(next方法返回指定结构对象)。
-
JavaScript可直接调用浏览器WebAPI;本地存储有localStorage(持久化)、sessionStorage(会话级)和IndexedDB(结构化数据库)三种方式,各适用于不同场景。
-
Element.matches()用于检查元素是否匹配CSS选择器,返回布尔值;IE8-不支持,需用querySelectorAll模拟,注意选择器合法性及转义。
-
纯HTML星级评分需用5个同name的radio按钮+对应label,input必须前置且隐藏(clip而非display:none),label紧随其后以支持:checked+label样式联动及可访问性。
-
Blob是JavaScript中表示不可变原始二进制数据的内置对象,是二进制数据容器,可由字符串、ArrayBuffer等创建,File是其子类;需用newBlob([data])构造,读取依赖异步方法如text()或arrayBuffer(),下载时常用URL.createObjectURL()生成临时链接。
-
HTML5不支持RTSP,需转为HLS或WebRTC;HLS由浏览器提供进度条但延迟高,WebRTC需自定义进度条,通过时间戳对齐与服务端seek实现,注意音视频同步和缓冲管理。
-
RSC是React生态定义的协议层,非HTML规范一部分;服务器生成RSCPayload(如$1{...}指令流),通过multipart/mixed响应传输,由客户端React运行时解析并构建DOM,HTML仅作为最终宿主容器承载渲染结果。
-
可用异步生成器配合事件流实现“边触发、边处理、边产出”的异步数组遍历:定义asyncfunction*,每次await事件后yield当前元素,用forawait...of消费;或手动调度next()与Promise;或基于ReadableStream构建带事件依赖的pull机制,注意清理监听器、错误处理与边界控制。
-
必须用MiniCssExtractPlugin替换style-loader才能提取独立CSS文件,生产环境启用splitChunks配置cacheGroups实现公共样式合并,Vite默认支持自动CSS分割无需手动配置。
-
@starting-style是CSS动画起始状态声明机制,需配合同名@keyframes和animation使用,仅Chromium114+实验性支持,必须启用实验标志,不兼容Firefox/Safari,不可用于transition,非生产就绪。
-
目前无法通过CSS伪类如::picture-in-picture-progress直接设置画中画(PiP)窗口内进度条的样式,因为该伪类并非标准且不受支持,浏览器对PiP内部UI的自定义权限极为有限,以确保安全性和一致性,开发者只能在视频进入PiP模式前通过构建自定义HTML5播放器来实现个性化进度条等控件,而::picture-in-picture伪类仅能作用于视频元素本身,无法影响PiP窗口内部的播放控制界面,因此完全自定义PiP进度条在当前Web标准下不可行。
-
计算属性名作为类静态成员时,初始化顺序问题本质是字段按声明顺序逐行执行、实时求值,而计算属性名中的引用若依赖尚未初始化的同级或后续静态成员会报错;应优先使用staticblock明确控制顺序,或提前在外部计算键名。
-
将扁平菜单转为树形结构需两次遍历:首次用对象缓存节点并初始化children,识别根节点;第二次将非根节点挂载到父节点children下,时间复杂度O(n)。
-
本文详解如何基于Tocca.js在移动设备上为元素绑定swipeleft/swiperight事件,并解决常见点击触发失效问题,确保滑动后能正确执行跳转或自定义逻辑。
-
空白页主因是document.write()在加载后清空页面,或HTML未正确加载、JS报错阻塞、CSS隐藏内容;应按Network→Console→Elements顺序排查。