如何用Node.js搭建一个HTTP服务器?
用Node.js搞个HTTP服务器,这事儿简单得有点不像话,但里面的门道其实不少。今天咱们不扯框架,就用最原始的核心模块http,从零搓一个能用的服务器出来。理解了这些,你再去看Express、Koa那些...
如何类型安全地使用localStorage?
直接裸用localStorage,简直就是给TypeScript项目埋雷。getItem永远返回string | null,你得手动解析和转换,还老得担心JSON.parse会不会炸。今天咱们聊聊怎么给这个老伙计套上类型安全的鞍具,...
如何声明模块和命名空间?
模块和命名空间,听起来都是用来组织代码的,但在TypeScript的语境下,它们代表了两种不同的时代和思路。今天咱们把这事儿捋清楚,让你知道该在什么时候用哪个,别再把它们搞混了。 先说模块,...
如何处理联合类型和交叉类型?
联合类型和交叉类型,是TypeScript类型系统里两个非常基础但又有点“反直觉”的概念。它们名字听起来像是对立的,但其实解决的是完全不同的问题。用好了,你的类型表达能力能上一个大台阶。 先...
如何实现Pick、Omit等工具类型?
TypeScript内置的Pick和Omit,简直是处理对象类型时的瑞士军刀。但你有没有想过,它们是怎么变出来的?今天咱们就拆开看看,自己动手实现一遍。理解了原理,你就能创造出适合自己项目的定制化工...
什么是条件类型?
条件类型,听名字就有点像是在类型系统里写if-else。没错,它的核心思想就是这样:根据一个类型关系检查,在编译时动态选择两种可能的类型之一。这玩意儿是TypeScript类型编程里真正的“分水岭...
如何定义函数重载?
函数重载,听起来像是从那些老派静态语言里来的概念,但在TypeScript里它活得很滋润。简单说,它允许你用一个函数名,根据不同的参数类型或数量,去干不同的事,并且返回不同的类型。这能让你的...
如何处理TypeScript中的非空断言?
非空断言操作符!,大概是TypeScript里最具争议性的语法之一了。它就像一把没护手的安全剃刀,用好了能让你省不少事儿,用不好就等着被割伤吧。今天咱们就聊聊怎么跟这玩意儿打交道。 那个小小的...
如何为已有JavaScript项目添加TypeScript?
给一个现成的JavaScript项目加上TypeScript,这事儿听起来有点吓人,但其实没那么可怕。你不需要一口气把所有.js文件都改成.ts,那会要人命的。咱们得用“渐进式”的策略,像打游击战一样,一点...
如何在Vue 3项目中使用TypeScript?
Vue 3配上TypeScript,那真是天生一对。Composition API的设计思路,跟用TS写逻辑简直是严丝合缝。今天咱不扯理论,就说说实际写代码时,那些真正有用的小细节。 用<script setup>语法糖...











