-
WebRTC是浏览器原生支持的开放标准,提供MediaStream、RTCPeerConnection和RTCDataChannel三类API实现P2P音视频与数据传输;需信令服务器交换SDP和ICE候选信息以建立连接。
-
通过重写XMLHttpRequest的open和send方法可拦截AJAX请求,添加认证头、修改请求体或响应数据。2.拦截fetch需替换全局方法,可在请求前修改参数,响应后处理数据。3.使用Proxy可实现动态、可配置的请求拦截。4.注意拦截仅能包裹行为,存在兼容性与调试风险,生产环境慎用。
-
可通过五种方法为HTML5元素添加边框:一、内联样式;二、内部样式表;三、外部CSS文件;四、分别设置四边属性;五、拆分width/style/color三属性组合定义。
-
答案:通过Proxy实现数据响应式,Compiler解析模板指令,Watcher与Dep完成依赖收集和视图更新,构建极简MVVM框架。
-
多列文本布局需依赖CSS的Multi-columnLayoutModule,通过column-count、column-width或columns属性将文本自动分栏,结合column-gap和column-rule控制间距与分隔线,并使用column-span:all确保标题、大图等元素横跨所有列,避免截断。响应式设计中推荐优先使用column-width或columns简写以实现自适应列数,配合媒体查询在不同屏幕尺寸下优化列数与间距,小屏强制单列以提升阅读体验,同时注意容器流动性与内容优先原则,确保布局
-
微任务在当前宏任务结束后、渲染前立即执行,常见类型包括Promise回调、MutationObserver回调和queueMicrotask();每次调用栈清空后,引擎持续执行全部微任务直至队列为空,不被渲染或宏任务打断。
-
PurgeCSS通过扫描文件识别并移除未使用的CSS类,减小文件体积,提升性能。首先安装@fullhuman/postcss-purgecss,再在postcss.config.js中配置content路径如['.//.html','./src//.js'],确保覆盖所有模板文件。为避免误删,需处理动态类名,可自定义extractor正则匹配或使用whitelist/whitelistPatterns保留关键样式。仅在生产环境启用,可与Webpack、Vite、Next.js等工具集成,在构建时自动清理冗
-
HTML5中class属性用于样式控制和JavaScript操作,需在起始标签内以空格分隔多个合法类名;CSS用“.类名”选择器复用样式;应语义化命名并避免冲突;JavaScript可通过classList动态增删切换单个或多个类。
-
使用Flexbox构建响应式导航栏,核心是通过弹性布局实现大屏横向排列、小屏堆叠或隐藏。首先创建语义化HTML结构,包含logo和导航链接列表;然后利用display:flex设置.navbar水平分布、垂直居中,.nav-links水平排列无列表符号,链接有内边距和白色文字。为适配移动端,添加隐藏的汉堡菜单按钮.menu-toggle(含三道横线),通过JavaScript切换.nav-links的active类控制显示。结合媒体查询:在屏幕宽度小于768px时,.menu-toggle显示,.nav-
-
图片多列布局尺寸不统一的根源是原始宽高比与分辨率差异且缺乏约束;解决需组合控制:设width:100%和height:auto实现等比缩放,父容器需有明确宽度,高度一致时用object-fit:cover配合固定高容器。
-
JavaScript模块语法核心是ES6的export/import,支持命名导出、默认导出及混合导入;需顶层使用,路径带扩展名,环境须支持ESM,与CommonJS不兼容。
-
动态创建DOM元素的核心是使用document.createElement()创建元素,再通过appendChild()或insertBefore()将其添加到DOM树中;2.设置元素的文本内容可用textContent或innerHTML(需注意XSS风险),属性可通过element.setAttribute()或直接赋值,样式通过element.style设置;3.常见挑战包括频繁DOM操作导致的性能问题、事件监听器未移除引发的内存泄漏、使用innerHTML带来的XSS风险、复杂结构导致的代码可维护
-
答案:自定义事件系统通过on、off、once、emit实现对象间解耦通信,支持事件监听与触发,可扩展批量清除、最大监听数限制等功能,适用于组件通信等场景。
-
PWA实现依赖ServiceWorker、WebAppManifest和HTTPS三要素,其中ServiceWorker是核心JavaScript驱动部分,负责缓存、离线支持与后台同步。
-
rem是相对于根元素font-size的缩放单位,1rem默认等于16px,通过动态设置html字号可实现整体等比缩放,适用于响应式布局与无障碍适配;em相对于父元素字号,易因嵌套导致级联失控,适合局部弹性排版;px是设备独立像素,尺寸固定,适用于边框、圆角等非文本类样式。