TypeScript的数字类型
TypeScript 中有哪些数字类型?它们的区别是什么?
TypeScript 中的数字类型主要有两种:number 和 bigint。
number 类型用于表示所有的浮点数(包括整数和小数),本质上和 JavaScript 的 Number 类型一致,采用 IEEE 754 双精度浮点数格式。
bigint 类型用于表示非常大的整数,超出了 number 类型所能精确表示的范围(即表示大于 2^53 - 1的整数)。
如何在 TypeScript 中声明和初始化一个数字变量?有哪些进制的数字字面量可以使用?
声明方式如下:
let price: number;
let price = 9.95;
TypeScript 支持多种进制的数字字面量,包括:
- 十进制(如
let x = 100;) - 二进制(以 0b 或 0B 开头,如
let bin = 0b100;) - 八进制(以 0o 或 0O 开头,如
let octal = 0o10;) - 十六进制(以 0x 或 0X 开头,如
let hexadecimal = 0xA;)
二进制、八进制和十六进制字面量在 TypeScript 中如何表示?
二进制:以 0b 或 0B 开头,后面只能是 0 或 1,例如:
let bin = 0b100;
八进制:以 0o 或 0O 开头,后面只能是 0~7,例如:
let octal = 0o10;
十六进制:以 0x或 0X 开头,后面是 0123456789 和 ABCDEF,例如:
let hexadecimal = 0xA;
TypeScript 中的 Number 和 number 有什么区别?应该如何选择?
Number(首字母大写)是 JavaScript 的内置对象类型,属于“装箱对象”,而 number(小写)是原始数据类型。
在 TypeScript 中,推荐始终使用 number 类型来声明数字变量,避免使用 Number,据说后者会带来不必要的复杂性和性能损耗。
如何声明一个大整数(bigint)?它的适用场景是什么?
声明方式如下,数字最后以字母 n 结尾:
let big: bigint = 988971992570991n;
适用于需要处理超大整数的场景,比如高精度计算、加密算法等,超出了 number 类型的安全整数范围。
-
如果你觉得我的工作对你有帮助,可以通过分享这篇文字或者关注同名公众号来支持我,你的支持是我持续创作的最大动力:
![image]()
-
转载以及引用请注明原文链接。
-
本博客所有文章除特别声明外,均采用CC 署名-非商业使用-相同方式共享 许可协议。

介绍了TypeScript 中的数字类型,以及各种进制数字在 TypeScript 中的表示

浙公网安备 33010602011771号