HarmonyOS NEXT鸿蒙开发 ArkTS:内置函数 parseInt()

提出问题

看下面代码,回答运行结果:

let a:string = "1"
let b:string = "10"

console.log("a + b的结果:", a + b)

执行结果:

a + b的结果: 110

因为 a 和 b 是 string 类型,string 类型 遇到 +,是 拼接,不是数学运算

如何不改变 a 和 b 类型的情况下,能够实现算术运算?

解决

使用 parseInt() 函数

parseInt() 介绍

parseInt() 是一个全局函数,用于将 字符串 类型的 数字,转换为整数

用法

// 将字符串转换为整数
let a:string = "1"
let b:string = "10"

let aNum: number = parseInt(a)
let bNum: number = parseInt(b)

console.log("a + b的结果:", aNum + bNum)

执行结果:

a + b的结果: 11

注意事项

字符串开头是数字,后面不是数字

返回可以转换的部分:

let result: number = parseInt("123abc");
console.log(result); // 输出:123

字符串不是数字

返回 NaN(Not a Number):

let result: number = parseInt("abc");
console.log(result); // 输出:NaN

字符串是小数

截断小数部分而非四舍五入:

let result: number = parseInt("123.456");
console.log(result); // 输出:123

原文出处:/show_1GW1xdgje5TF.html