- Number():这是最直接的方法,它会尝试将字符串转换为数字。如果字符串不能被解析为一个有效的数字,结果将是
NaN。
let str = "123";
let num = Number(str); // 123
- parseInt():这个函数尝试解析一个字符串,并返回一个整数。如果字符串包含一个可以解析为整数的子串,那么结果就是这个整数。
let str = "123abc";
let num = parseInt(str); // 123
- parseFloat():这个函数和
parseInt()类似,只不过它会返回一个浮点数。
let str = "123.45abc";
let num = parseFloat(str); // 123.45
- +操作符:将字符串放在
+操作符的左边,可以将字符串转换为数字。如果字符串不能被解析为一个有效的数字,结果将是NaN。
let str = "123";
let num = +str; // 123
- Number.parseFloat() 和 Number.parseInt():这些方法类似于全局的
parseFloat()和parseInt(),但是它们不会使用全局的区域设置。
let str = "123.45abc";
let num = Number.parseFloat(str); // 123.45
- BigInt():对于大整数,可以使用BigInt构造函数。
let str = "12345678901234567890";
let bigNum = BigInt(str); // 12345678901234567890n
注意:每种方法都有其局限性,特别是对于不同的数字格式和语言环境。在处理来自不同源或具有特定格式的数字时,可能需要使用多种方法进行转换和验证。