前端技术文章
-
Proxy无法代理原始值,因其target必须为对象;尝试newProxy(42,handler)会抛TypeError;Vue3用ref将原始值封装为{value}对象再代理,以支持响应式。313 收藏 -
JavaScript是运行于多宿主环境的动态弱类型原型语言,核心机制包括执行上下文与调用栈、TDZ、事件循环、this绑定规则及原型链查找逻辑。358 收藏 -
border-width必须带单位或关键字,border-style是边框显示前提且不可省略,简写border需严格按width/style/color顺序,工具类应封装完整边框而非拆分属性。340 收藏 -
ShadowDOM的closed模式不提供强主权保护,仅使shadowRoot返回null;真正沙箱需iframe、StrictCSP和ShadowDOM协同,推荐open模式配合显式契约与三层防线。445 收藏 -
ServiceWorker通过预缓存关键资源、fetch阶段Cache-First策略、导航预加载及Stale-While-Revalidate机制,实现首页秒开:安装时预存HTML/CSS/JS/图标;fetch时优先返回缓存;预加载兜底;HTML缓存同时后台更新。396 收藏 -
字符串可借用数组的非破坏性方法(如map、filter、reduce、slice、join),因其具备长度和索引访问特性;需用call/apply绑定this,或用扩展运算符、Array.from等ES6+方式转为数组再操作。339 收藏 -
写屏障解决年轻代GC漏标老年代指向年轻代引用的问题,通过在老→年写操作时标记对应卡表为脏,配合记忆集实现高效跨代引用追踪。427 收藏 -
fr是剩余空间的份数,先扣除固定尺寸再按比例分配;与固定单位并存时后者优先占位;需配合minmax()、媒体查询等实现响应式和兼容性。107 收藏 -
DOM是浏览器接口而非JavaScript内置部分,根节点为document(nodeType=9),非html;childNodes含所有节点类型,children仅含元素节点;getElementById快但ID易重复,querySelector更安全灵活;innerHTML会重建DOM并丢失事件,textContent仅改文本且防XSS。318 收藏 -
最可靠方案是将404.html放根目录并配置服务器返回真实404状态码;Apache用ErrorDocument,Nginx用error_page,Vercel/Netlify自动识别但需命名规范,GitHubPages仅支持根目录404.html且Jekyll需禁用渲染;页面中禁用跳转、确保标题含“404”、提供首页和上一页导航、避免无效链接;本地双击无效,须HTTP环境测试,且页面资源路径必须有效。169 收藏 -
X-UA-Compatible仅用于IE存量系统维护,必须置于<head>最开头(无任何前置内容),否则IE直接忽略;推荐值为IE=edge,优先使用HTTPHeader方式发送。176 收藏 -
console.log是轻量调试工具,需用标签、分组、对象包裹提升可读性;console.table适合结构化数据对比;console.trace和console.time分别用于追踪调用栈和性能计时;注意日志非原子性,需快照避免引用误读。362 收藏 -
触发BFC才是解决右侧内容被遮挡的根本方法,因其让容器感知浮动并重新布局;margin-left仅适用于固定宽度的简单场景,且无法解决父容器塌陷等问题。479 收藏 -
移动端图标颜色不随文字变化,主因是SVG引入方式错误、内联fill属性覆盖、父容器未显式设置color或伪元素限制;正确做法是用内联SVG并清除所有硬编码颜色,配合fill:currentColor级联控制。250 收藏 -
<p>HTML注释必须用<!---->包裹,不可嵌套、不可在标签内或DOCTYPE前,JS/CSS中无效,服务端模板需注意剥离风险,调试时可能影响布局。</p>142 收藏