提出问题
看下面代码,回答运行结果:
let a = "1"
let b = "10"
console.log("a + b的结果:", a + b)
执行结果:
a + b的结果: 110
因为 a 和 b 是 string 类型,string 类型 遇到 +,是 拼接,不是数学运算
如何不改变 a 和 b 类型的情况下,能够实现算术运算?
解决
使用 parseInt() 函数
parseInt() 介绍
parseInt() 是一个全局函数,用于将 字符串 类型的 数字,转换为整数
用法
// 将字符串转换为整数
let a = "1"
let b = "10"
let aNum = parseInt(a)
let bNum = parseInt(b)
console.log("a + b的结果:", aNum + bNum)
执行结果:
a + b的结果: 11
注意
字符串是小数
截断小数部分而非四舍五入:
let result = parseInt("123.456");
console.log(result); // 输出:123
### 字符串开头是数字,后面不是数字
返回可以转换的部分:
```typescript
let result = parseInt("123abc");
console.log(result); // 输出:123
字符串不是数字
返回 NaN(Not a Number):
let result = parseInt("abc");
console.log(result); // 输出:NaN
```