需求:有这么个需求,我们有两个数组,一个记录扑克牌花色,一个记录扑克牌点数,需要有一个函数,传递两个值,根据传递的值生成扑克牌,需要我们定义参数的类型检查。
思路:肯定不能用 string,这样范围太大了,我们可以使用元祖生成联合类型去检测
const colors = ["♠", "♥", "♣", "♦"] as const; const values = ['2','3', '4', '5'. '6', '7', '8', '9', '10', 'J', 'Q', 'K', 'A'] as const; type Values = typeof values[number] type Colors = typeof colors[number] function createCard(value: Values, color: Colors) { return { value, color } }