文章の目录
1、数值类型(number)
数字类型,和 JavaScript
一样,TypeScript
的数值类型都是浮点数,可支持二进制、八进制、十进制和十六进制
let num: number = 123;
// num = "456";
// error TS2322: Type 'string' is not assignable to type 'number'.
// 不能将类型“string”分配给类型“number”。ts(2322)
num = 456;
进制表示:
let binaryLiteral: number = 0b1010; // 二进制
let octalLiteral: number = 0o744; // 八进制
let decLiteral: number = 6; // 十进制
let hexLiteral: number = 0xf00d; // 十六进制
转换成JavaScript
代码:
var binaryLiteral = 10; // 二进制
var octalLiteral = 484; // 八进制
var decLiteral = 6; // 十进制
var hexLiteral = 0xf00d; // 十六进制
发现只有十六进制还保持原来的数值,其他的都转换成十进制了。
1.1、什么是二进制、八进制、十进制、十六进制
- 二进制:二进制数据是用 0 和 1 两个数码来表示的数。它的基数为 2,进位规则是“逢二进一”,借位规则是“借一当二”。
- 八进制:八进制是一种以 8 为基数的计数法,采用 0,1,2,3,4,5,6,7 八个数字,逢八进 1。
- 十进制:十进制数就是用 0、1、2 …9,这十个数来表示的数。
- 十六进制:十六进制是计算机中数据的一种表示方法。同我们日常中的十进制表示法不一样。一般用数字 0 到 9 和字母 A 到 F(或
a~f
)表示,这些数字和字母任意组合用来表示0~15
之间的某个字。其中A~F
表示10~15
,这些称作十六进制数。
2、范围
number类型能表示在-2^53
和2^53
之间的整数,同时也能够表示小数。
3、类型特性
3.1、支持基本数学运算
number 类型支持基本的数学运算,如加法、减法、乘法和除法。可以使用 +、-、* 和 / 运算符进行数值计算。例如,可以执行 let result: number = 10 + 5
; 来得到 15
。
3.2、提供数值范围检查
number 类型提供了最大值和最小值的常量,以及一些函数用于检查数值的范围。最大值常量为 Number.MAX_VALUE
,最小值常量为 Number.MIN_VALUE
。可以使用 Number.isSafeInteger()
函数来检查一个数值是否在安全整数范围内。
3.3、支持科学计数法
number 类型可以使用科学计数法来表示非常大或非常小的数值。例如,可以使用 let largeNum: number = 1e6
; 来表示 1000000
。
3.4、具有特殊数值
number 类型还具有一些特殊的数值,如正无穷大(Infinity)、负无穷大(-Infinity)和非数值(NaN)。这些特殊数值可以通过 Number.POSITIVE_INFINITY
、Number.NEGATIVE_INFINITY
和 Number.NaN
来表示。
4、常见的操作
在 TypeScript
中,可以对 number 类型进行许多常见的操作,其中包括但不限于以下几种:
4.1、类型转换
可以使用 parseInt()
和 parseFloat()
函数将字符串转换为 number 类型。例如,let num: number = parseInt("10")
; 将字符串 “10” 转换为 number 类型的数值。
4.2、数值校验
可以使用 isNaN()
函数判断一个数值是否为非数值(NaN)。返回值为 true 表示是非数值,返回值为 false 表示不是非数值。例如,let result: boolean = isNaN(10)
; 返回 false,表示数字 10 不是非数值。
4.3、数值格式化
可以使用 toFixed()
方法将一个数值保留指定的小数位数,并返回一个字符串。该方法会四舍五入到指定的小数位数。例如,let num: number = 3.14159; num.toFixed(2)
; 返回字符串 “3.14”。
4.4、数值比较
可以使用比较运算符(>, <, >=, <=) 来比较两个 number 类型的数值。返回值为布尔类型,表示比较结果是否为真。例如,let result: boolean = 10 > 5
; 返回 true,表示数字 10 大于 5。
4.5、数值运算
可以使用基本的数学运算符(+, -, *, /) 对 number 类型的数值进行加法、减法、乘法和除法运算。例如,let result: number = 10 + 5
; 返回数值 15。
5、注意事项
在使用 number 类型时,需要注意以下几点:
- 浮点数精度问题:由于计算机内部对于浮点数的存储方式,可能会导致浮点数精度不准确。在进行浮点数的比较时,建议使用近似比较而不是精确比较。
- 整数溢出问题:number 类型可以表示的整数范围较大,但超出范围的整数会导致溢出。在进行整数计算时,要确保结果不会溢出。
- 类型转换问题:在进行类型转换时,需要注意源数据的格式和目标数据的期望类型,以避免错误的转换结果。
- 特殊数值问题:特殊数值(Infinity、-Infinity 和 NaN) 可能会导致计算结果异常。在进行数值操作时,要注意处理特殊数值的情况。
参考
写在最后
如果你感觉文章不咋地
//(ㄒoㄒ)//
,就在评论处留言,作者继续改进;o_O???
如果你觉得该文章有一点点用处,可以给作者点个赞;\\*^o^*//
如果你想要和作者一起进步,可以微信扫描二维码,关注前端老L;~~~///(^v^)\\\~~~
谢谢各位读者们啦(^_^)∠※
!!!