前端技术文章
-
箭头函数不是语法糖,它与普通函数在this绑定、不可new调用、无arguments三方面存在本质区别,直接替换易引发隐性bug。105 收藏 -
闭包不是IndexedDB游标内存压力的直接原因,真正问题是游标遍历中意外长期持有大对象引用;需检查onSuccess回调是否缓存value、事务生命周期是否错配、continue()是否被阻断、以及批量处理时是否过度暂存数据。363 收藏 -
WebWorker仅对计算型长任务有效,不能加速DOM操作或网络请求;适合图像处理、加密等CPU密集任务,50ms以上才值得抽离;需用transferable避免内存翻倍;路径和调试需注意独立上下文;移动端内存受限需主动降级和清理。127 收藏 -
Pragma的meta标签在所有主流浏览器中均被忽略,仅HTTP响应头中的Pragma在HTTP/1.0客户端或与Cache-Control共存时才可能生效,但实际起效的是Cache-Control。207 收藏 -
blockquote用于长篇独立引用,q用于短小内联引用;2.前者视觉缩进并常配cite说明来源,后者自动添加引号;3.根据引用长度和位置选择标签;4.语义化提升可访问性与SEO。333 收藏 -
FileReader是浏览器提供的用于读取本地文件内容的API,通过结合<inputtype="file">获取用户选择的文件后,使用readAsText、readAsDataURL等方法异步读取文本、图片预览或二进制数据,并在onload回调中处理结果,同时需监听onerror处理异常,适用于文本解析、图片预览等场景。406 收藏 -
HTML中ul和ol嵌套合法但需严格遵循结构:子列表必须作为li的子元素,CSS控制编号与缩进,counter实现多级序号,屏幕阅读器不读CSS生成编号。318 收藏 -
JavaScript轻量图表库核心是数据映射+图形渲染:Canvas适合高频重绘(如实时折线图),需手动坐标转换和clearRect重绘;SVG适合交互丰富图表,基于DOM节点,支持事件、viewBox缩放和无障碍属性。464 收藏 -
加will-change:transform反而更闪,因强制图层提升导致合成层重建、纹理丢弃及误判重绘;应禁用该声明,改用图片预加载、固定容器尺寸、visibility:hidden等方案。487 收藏 -
history.pushState()不触发页面刷新,因它仅修改URL和历史栈而不发起新导航请求,适用于SPA无刷新路由;其state参数为可序列化对象,title参数多数浏览器忽略,url须同源;popstate仅在用户后退/前进或调用back()/forward()时触发,且需尽早绑定监听。458 收藏 -
本文介绍如何解决TypeScript中Sequelize模型因缺少关联方法类型声明而报错(如Property'getChats'doesnotexistontype'Model<any,any>')的问题,核心是通过接口扩展Model类型并显式标注模型实例类型。414 收藏 -
优先使用外部样式表并配合缓存策略,通过内容指纹命名、分离关键CSS、启用压缩和合理设置缓存头,可显著提升页面加载速度与用户体验。274 收藏 -
<template>元素内容需克隆后使用,直接操作会清空源;必须用content.cloneNode(true)深克隆,再修改textContent或dataset;注意判空、防XSS,跨文档才需importNode。408 收藏 -
::marker的font-size不生效,因CSS规范限制其可继承属性极少,且尺寸由content、line-height和font-family共同决定;推荐用transform:scale()配合transform-origin:centerleft实现可靠缩放。208 收藏 -
mix-blend-mode仅对非隔离且同层叠上下文的兄弟或后代元素生效;父元素设isolation:isolate、transform、filter或opacity<1会创建新层叠上下文导致失效。435 收藏