前端技术文章
-
navigator.onLine仅读取系统网络接口状态,无法验证真实联网能力;true时可能DNS失败或服务器宕机,false时基本确认断网,需配合fetch探测和事件监听实现可靠判断。185 收藏 -
async/await是JavaScript中基于Promise的异步语法糖,使异步代码更易读;async函数必返回Promise,await暂停当前函数执行并交还控制权,依赖微任务机制,不阻塞主线程,错误通常用try/catch处理。127 收藏 -
真正决定属性查找路径的是__proto__,不是prototype;__proto__构成运行时逐级向上搜索的原型链,而prototype仅是用于初始化__proto__的原型模板。201 收藏 -
JavaScript剪贴板API需在用户触发事件中使用,如点击操作,禁止静默调用;2.必须在HTTPS或localhost安全上下文中运行;3.读取或写入前应通过PermissionsAPI检查权限;4.避免滥用及处理敏感数据,确保用户知情并主动确认,提升安全性与体验。340 收藏 -
最直接有效的办法是为表格外层添加支持横向滚动的容器。用div包裹table并设overflow-x:auto、width:100%,移除table的width:100%或table-layout:fixed,配合min-width和width:max-content确保内容不压缩变形。226 收藏 -
::placeholder伪元素用于自定义输入框占位符样式,支持color、font-size等属性,可针对不同输入框设置,并建议添加厂商前缀以兼容旧版浏览器。407 收藏 -
:blank伪类因未被主流浏览器支持而无法实际使用,它仅是CSSSelectorsLevel4草案,Chrome、Firefox、Safari均不解析;当前唯一可靠方案是:empty(需注意其对空白符敏感)或JS模拟判定。309 收藏 -
用<progressvalue="4"max="7">正确显示小组任务完成率,需通过data属性存原始数据并用JS动态更新value、文案及状态,避免硬编码或误用<meter>;纯HTML无法实现动态更新。130 收藏 -
JavaScript中对象创建应按需选择:字面量适合单例和静态数据,构造函数/class适用于多实例、方法复用与封装,工厂函数则提供无new的可控创建方式。135 收藏 -
使用<img>引入外部SVG时currentColor失效,因其独立文档上下文无法继承父级颜色;解决方法为内联SVG或用mask-image/background-image配合单色SVG。370 收藏 -
VueRouter导航守卫仅拦截同源内部路由跳转,不处理外部链接;其核心作用是校验用户对目标内部路由(如/admin/users)的访问权限,并通过beforeEach等钩子实现重定向或中断,配合后端鉴权确保安全。149 收藏 -
维护页必须是纯静态HTML文件,不依赖JS、外部资源或API,所有路径均需路由至该页,并禁用缓存与搜索引擎索引,确保用户清晰获知维护状态及恢复时间。217 收藏 -
cover等比缩放确保覆盖容器但可能裁剪,contain等比缩放确保完整显示但可能留白;flex容器中背景不显常因高度坍缩为0;移动端禁用auto,优先cover+center;清晰缩放首选SVG或image-set()。125 收藏 -
WeakRef和FinalizationRegistry无法精准监听大型对象回收——GC时机不可控、回调不及时、强引用链会完全屏蔽其作用,仅能辅助验证或兜底,不可替代主动断开引用。142 收藏 -
命令模式通过将请求封装为对象,实现了请求发送者与接收者的解耦,使操作可参数化、存储、传递及撤销;它解决了复杂操作中高耦合和扩展难的问题,支持撤销/重做、宏命令、任务队列等场景;典型应用包括GUI按钮菜单、图像处理宏、异步任务队列和游戏行为控制;但其缺点是会增加类的数量,可能导致过度抽象,且撤销逻辑实现复杂,需权衡使用场景以确保收益大于成本。327 收藏