#前端开发现状# 今天面了一个 5 年经验的候选人,一道 TS 题把他问住了:
type ToArray<T> = T extends any ? T[] : never;
type Result = ToArray<string | number>;
Result 是什么类型?
他说是 (string | number)[]。错了,是 string[] | number[]。
这就是「分布式条件类型」——当 T 是裸类型参数,条件类型会把联合类型拆开逐个求值。
这还只是第 1 问。我把 5 道能筛掉 80% 候选人的 TS 灵魂拷问都整理出来了,每道都带连环追问。