You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

TSC代码中的'n'是什么?是否属于特定关键字?

结论

这里的n不是TSC专属的关键字,是JavaScript ES2020标准引入的BigInt类型字面量的固定后缀,TypeScript从3.2版本开始原生支持该语法。

具体作用说明

  • 普通数字比如1属于number类型,最多只能安全表示2^53 - 1的整数,超出这个范围会出现精度丢失问题。
  • 数字后面加后缀n就表示这是一个bigint类型的整数字面量,支持任意精度的整数运算,不会有溢出问题。
  • 你贴的代码里参数x和y都声明为bigint类型,运算时必须使用同类型的值,所以返回值里要写1n而不能写1,否则会报类型不匹配错误,也无法正常完成BigInt运算。

注意:bigint类型不支持和number类型直接做运算,以下写法会报错:

1n + 1 // 类型错误,无法将bigint和number相加

需要手动统一类型后再运算:

1n + BigInt(1) // 正确,返回2n
Number(1n) + 1 // 正确,返回2

内容的提问来源于stack exchange,提问作者AmateurDev

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.05 14:54:03