在前端开发中,我们经常需要处理数值类型的数据。TypeScript 是一种静态类型语言,它为我们提供了更加严格的类型检查,并且可以帮助我们规范数值类型的使用。在本文中,我们将讨论 TypeScript 中数值类型的使用规范。
TypeScript 中的数值类型
在 TypeScript 中,有以下几种数值类型:
number
:表示数值类型,包括整数和浮点数。bigint
:表示大整数类型,可以处理更大范围的整数。NaN
:表示非数值类型。Infinity
和-Infinity
:表示正无穷和负无穷。
数值类型的声明
在 TypeScript 中,我们可以通过以下方式声明数值类型:
let num: number = 123; let bigNum: bigint = 123n; let nan: number = NaN; let posInf: number = Infinity; let negInf: number = -Infinity;
其中,number
和 bigint
是基本类型,而 NaN
、Infinity
和 -Infinity
是数值类型的特殊值。
数值类型的运算
在 TypeScript 中,我们可以使用数值类型进行各种运算。例如:
let a: number = 10; let b: number = 20; console.log(a + b); // 输出 30 console.log(a - b); // 输出 -10 console.log(a * b); // 输出 200 console.log(a / b); // 输出 0.5
需要注意的是,在 TypeScript 中,如果我们对非数值类型进行运算,会得到 NaN
:
let a: number = 10; let b: number = NaN; console.log(a + b); // 输出 NaN
数值类型的比较
在 TypeScript 中,我们可以使用数值类型进行比较。例如:
let a: number = 10; let b: number = 20; console.log(a > b); // 输出 false console.log(a < b); // 输出 true console.log(a >= b); // 输出 false console.log(a <= b); // 输出 true
需要注意的是,在 TypeScript 中,如果我们对非数值类型进行比较,会得到 false
:
let a: number = 10; let b: number = NaN; console.log(a > b); // 输出 false
数值类型的格式化输出
在 TypeScript 中,我们可以使用 toFixed()
方法对数值类型进行格式化输出。例如:
let num: number = 3.1415926; console.log(num.toFixed(2)); // 输出 3.14
需要注意的是,toFixed()
方法返回的是字符串类型,需要使用 Number()
方法进行转换:
let num: number = 3.1415926; console.log(Number(num.toFixed(2))); // 输出 3.14
数值类型的类型转换
在 TypeScript 中,我们可以使用类型转换函数将数值类型转换为其他类型。以下是常用的类型转换函数:
Number()
:将其他类型转换为数值类型。parseInt()
:将字符串类型转换为整数类型。parseFloat()
:将字符串类型转换为浮点数类型。
例如:
let str: string = '123'; let num: number = Number(str); let int: number = parseInt(str); let float: number = parseFloat(str); console.log(num); // 输出 123 console.log(int); // 输出 123 console.log(float); // 输出 123
需要注意的是,在进行类型转换时,如果无法转换,会得到 NaN
:
let str: string = 'abc'; let num: number = Number(str); let int: number = parseInt(str); let float: number = parseFloat(str); console.log(num); // 输出 NaN console.log(int); // 输出 NaN console.log(float); // 输出 NaN
总结
本文介绍了 TypeScript 中数值类型的使用规范,包括数值类型的声明、运算、比较、格式化输出和类型转换。希望本文对您有所帮助,能够规范您的前端开发工作。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/660c1a3dd10417a222c5981d