#前端基础

共 23 篇

【每日一面】事件模型与事件委托 每日一面 No.051 09-16

【每日一面】事件模型与事件委托

事件在 DOM 树里先捕获后冒泡,事件委托借着冒泡把 N 个监听器收成一个,顺带让动态节点自动生效。

22 min·7694 字 阅读全文 →
深入浅出前端路由体系:从 URL 到渲染的完整链路 深度 No.050 09-16

深入浅出前端路由体系:从 URL 到渲染的完整链路

前端路由要把内存里的 UI 状态和地址栏的 URL 始终对齐,从 hash 到 History 再到导航标准化,匹配打分、导航守卫、懒加载与部署 fallback 才是真正吃功夫的地方。

38 min·13221 字 阅读全文 →
【每日一面】类型系统与类型转换 每日一面 No.048 09-15

【每日一面】类型系统与类型转换

JavaScript 的类型转换全都落在 ToPrimitive、ToString、ToNumber、ToBoolean 四个抽象操作上,把加号与宽松相等(==)的规则串起来,[] == ![]、{} + [] 这类题就不再是靠背的。

19 min·6824 字 阅读全文 →
【每日一面】内存泄漏与垃圾回收 每日一面 No.047 09-15

【每日一面】内存泄漏与垃圾回收

内存泄漏的本质是对象从根仍然可达、GC 回收不掉,所以要掌握的是标记-清除与代际回收的判定逻辑,以及全局变量、定时器、闭包、DOM 引用、事件监听、第三方库这六类高频泄漏场景的定位路径。

18 min·6412 字 阅读全文 →
深度 No.046 09-11

读懂前端工程化体系

前端工程化不是某个具体工具,而是构建体系、依赖管理、规范化、自动化流水线四根支柱撑起来的整套方法论,从刀耕火种一路演进到 Rust 重构与 AI 深度融入。

37 min·13080 字 阅读全文 →
【每日一面】深浅拷贝 每日一面 No.045 09-11

【每日一面】深浅拷贝

浅拷贝只复制第一层、嵌套引用依旧共享,深拷贝则要递归到每一层,还得用 WeakMap 兜住循环引用、用类型分支兜住 Date / RegExp / Map / Set。

19 min·6615 字 阅读全文 →
【每日一面】this 指向与绑定规则 每日一面 No.044 09-10

【每日一面】this 指向与绑定规则

this 在函数被调用的那一刻才定下来,看调用方式就行:new > 显式 bind > 对象方法 > 默认绑定,而箭头函数不绑定 this,只一路向上继承词法作用域的 this。

21 min·7496 字 阅读全文 →
深度 No.043 09-09

深入浅出微前端架构

当单体前端的构建、发布与协作都撞上规模天花板,微前端把业务拆成可独立交付的子应用再运行时组合——本文从原理讲到四大主流方案对比,再落到 qiankun 落地与工程实践里的那些坑。

43 min·15012 字 阅读全文 →
【每日一面】深入理解 JavaScript 原型链 每日一面 No.042 09-09

【每日一面】深入理解 JavaScript 原型链

原型链是靠 __proto__ 把实例、原型与构造函数串起来的一条查找链:属性沿它一路查到 null,把 prototype 与 constructor 的关系理顺,class extends 的本质也就通了。

20 min·6862 字 阅读全文 →
【每日一面】深入理解闭包 每日一面 No.041 09-08

【每日一面】深入理解闭包

闭包是作用域链查找与垃圾回收共同作用的结果:内部函数让外部变量持续存活,用于数据私有、状态保持与防抖节流,但也要提防意外的内存泄漏。

16 min·5687 字 阅读全文 →
读懂 SSO 深度 No.035 12-10

读懂 SSO

单点登录让一次认证通行所有互信系统,靠 CAS / OAuth2.0 / OIDC / SAML 这几套协议和票据机制,但「一次登录全域通行」也意味着全域风险,得层层设防。

14 min·4931 字 阅读全文 →
【每日一面】HTTP 和 HTTPS 的区别 每日一面 No.031 11-26

【每日一面】HTTP 和 HTTPS 的区别

HTTPS 就是 HTTP 套上 SSL/TLS,用对称 + 非对称加密和证书体系,保住传输的机密与身份。

9 min·3094 字 阅读全文 →
深度解析 JavaScript 作用域与作用域链 前端基础 No.029 11-17

深度解析 JavaScript 作用域与作用域链

作用域分全局、函数、块级,变量查找顺着 `[[Scopes]]` 一路向上,理解词法作用域才能吃透闭包。

16 min·5518 字 阅读全文 →
【每日一面】如何解决内存泄漏 每日一面 No.028 11-17

【每日一面】如何解决内存泄漏

内存泄漏靠 DevTools 定位、靠切断引用来治理,常见元凶是全局变量、闭包、DOM 引用和第三方库。

11 min·3799 字 阅读全文 →
JavaScript 原型/原型链 前端基础 No.026 11-14

JavaScript 原型/原型链

`[[Prototype]]`、`__proto__` 与 `prototype` 各司其职,属性沿原型链一路查到 null,而 class 只是它的语法糖。

20 min·7035 字 阅读全文 →
【每日一面】BOM 是什么 每日一面 No.025 11-13

【每日一面】BOM 是什么

BOM 管的是 window、location、history、screen 这些浏览器窗口能力,和管文档结构的 DOM 是两回事。

9 min·3146 字 阅读全文 →
深入浅出 SPA/MPA 前端基础 No.023 11-07

深入浅出 SPA/MPA

SPA 交互快但 SEO 弱,MPA 首屏快且 SEO 好,选型就是在交互与收录之间做权衡。

22 min·7575 字 阅读全文 →
【每日一面】实现一个深拷贝函数 每日一面 No.022 11-04

【每日一面】实现一个深拷贝函数

JSON 方案扛不住函数与循环引用,健壮的深拷贝要递归遍历,并用 WeakMap 兜住环、用特判兜住 Date / RegExp / Map / Set。

16 min·5438 字 阅读全文 →
深入浅出 ES Module 前端基础 No.021 10-31

深入浅出 ES Module

ESM 是语言级的模块方案:静态、独立作用域、按引用传递、异步加载,和 CJS / AMD / UMD 都不太一样。

11 min·3762 字 阅读全文 →
【每日一面】对 Promise.race 的理解 每日一面 No.019 10-29

【每日一面】对 Promise.race 的理解

Promise.race 谁先 settle 就返回谁,正好用来做超时控制与请求重试。

11 min·3954 字 阅读全文 →
【每日一面】手写防抖函数 每日一面 No.017 10-27

【每日一面】手写防抖函数

防抖等你不动了再执行、节流按固定节奏执行,搜索输入这类高频触发场景全靠它。

6 min·1946 字 阅读全文 →
浅浅的聊一下 WebSocket 前端基础 No.012 10-09

浅浅的聊一下 WebSocket

WebSocket 借一次 HTTP Upgrade 握手升级成全双工长连接,头部开销小,正好适合实时双向通信。

9 min·3288 字 阅读全文 →
《你不知道的JavaScript》笔记(一) 读书笔记 No.006 10-09

《你不知道的JavaScript》笔记(一)

作用域由书写位置决定,嵌套与遮蔽由此而来,而 `eval` / `with` 会破坏编译优化——这是理解 JS 的起点。

5 min·1916 字 阅读全文 →