-
rest参数必须位于函数参数末尾且仅出现一次,接收真数组;不可与arguments共存,不支持默认值,误用会直接报错。
-
捕获先于冒泡,事件流分为捕获、目标、冒泡三阶段;默认addEventListener在冒泡阶段执行,设第三个参数为true才在捕获阶段响应;stopPropagation()可阻止后续传播,但需谨慎使用以免破坏事件委托等正常逻辑。
-
HTML表单与微服务集成的核心是通过API网关实现解耦与协作。表单提交数据至统一入口,由网关路由到对应微服务,避免前端直连服务,提升安全与可维护性。推荐使用JSON格式异步提交,结合前端组件化与多步向导式设计,将复杂表单按业务域分解为独立模块,每个模块对接特定微服务,实现职责分离。前端应实施基础验证并禁用重复提交,后端需严格校验数据并返回统一错误格式,支持分层验证与友好提示。针对分布式事务,采用Saga模式保证最终一致性,前端根据错误类型提供明确反馈,如部分失败时引导用户完成后续操作。整个流程需配合全局状
-
用==null可同时判断null和undefined;Number()全匹配转数字,parseInt()和parseFloat()分别截取整数和浮点数;typeof[]返回"object"是历史遗留,应使用Array.isArray();隐式转换易致误判,推荐严格相等和显式转换。
-
Bootstrap的.form-control类可统一input/select/textarea样式,.form-floating实现浮动标签,状态类需与.form-control共用,尺寸应优先使用.form-control-lg/.sm而非手动调整height。
-
WeakRef和FinalizationRegistry提供弱引用与对象回收后回调机制,解决内存泄漏问题。WeakRef允许引用对象而不阻止其被垃圾回收,适用于缓存等场景避免内存泄漏;FinalizationRegistry在对象被回收后执行清理操作,用于释放文件句柄、数据库连接等外部资源。两者结合实现更精细的内存与资源管理,提升JavaScript在复杂应用中的性能与可靠性。
-
JavaScript模块化是项目超300行、多人协作或需复用时的必然选择;不模块化会导致var冲突、加载顺序错乱、全局污染覆盖、调试困难等问题,应使用type="module"和import()/export,避免无声明赋值与动态require。
-
答案:前端项目需通过JavaScript错误监控与上报机制及时发现并定位线上问题。1.使用window.onerror捕获全局同步错误,但无法获取Promise错误和跨域脚本详细信息;2.通过addEventListener('unhandledrejection')监听未捕获的Promise异常;3.实现reportError函数,优先使用navigator.sendBeacon上报错误数据以确保页面卸载时仍能发送;4.结合SourceMap解析压缩代码的堆栈信息,还原真实源码位置以便调试。该体系需兼顾
-
CSS的::-webkit-scrollbar伪类可自定义WebKit内核浏览器滚动条外观,含scrollbar、track、thumb等五个关键部分,支持深浅色模式适配,但Firefox和移动端Safari兼容有限。
-
hover动画卡顿或跳变是因未在常态规则中正确声明transition;需指定可过渡属性、合理时长(0.1s–0.3s)和缓动函数,并避免用all或不可过渡属性;移动端应改用:active或JS实现按压反馈。
-
iOS原生App嵌入HTML5页面需用WKWebView安全加载本地或远程资源,正确配置allowingReadAccessTo、使用loadFileURL、规范JS与原生通信机制,并确保资源路径与权限匹配。
-
高阶函数是接受函数为参数或返回函数的函数,用于提升代码简洁性、复用性与可维护性;它支持行为抽象(如filter/map/reduce)、延迟执行与配置复用、异步流程组合、闭包状态封装等核心实践。
-
HTML5建模中外部图片纹理不显示的主因是路径错误、跨域限制或纹理初始化时机不当;Three.js中TextureLoader静默失败、未设img.crossOrigin、未置material.needsUpdate、尺寸非2的幂或格式不支持均会导致黑屏或留白。
-
保存网页为HTML有五种方法:一、“另存为”保存完整页面;二、开发者工具复制outerHTML获取原始代码;三、控制台执行JavaScript并手动保存;四、安装扩展如SingleFile一键保存;五、用wget命令行批量抓取。
-
Promise是对异步状态的封装,非同步化工具;newPromise(fn)中fn立即执行且须调用resolve/reject;.then()/.catch()每次返回新Promise,状态由回调返回值或错误决定。