JavaScript 中将字符串转换为数字328


在 JavaScript 中,将字符串转换为数字是一项常见且基本的操作。执行此转换有几种方法,每种方法都有其优点和缺点。

parseInt()

parseInt() 函数是将字符串转换为整数的常用方法。它接受两个参数:要转换的字符串和一个基数(可选)。基数指定字符串中数字表示的数字系统。默认情况下,基数为 10(十进制),但可以指定为 2(二进制)、8(八进制)或 16(十六进制)。
const num1 = parseInt("123"); // 123
const num2 = parseInt("0b1111", 2); // 15
const num3 = parseInt("0o17", 8); // 15
const num4 = parseInt("0x0f", 16); // 15

parseFloat()

parseFloat() 函数类似于 parseInt(),但它将字符串转换为浮点数。它接受一个参数:要转换的字符串。默认情况下,它会解析字符串中第一个遇到的数字,并忽略任何其他数字或字符。
const num1 = parseFloat("123.45"); // 123.45
const num2 = parseFloat("0b1111.1", 2); // NaN
const num3 = parseFloat("0o17.3", 8); // NaN
const num4 = parseFloat("0x0f.f", 16); // NaN

Number()

Number() 函数是将字符串转换为数字的另一种方法。它接受一个参数:要转换的字符串。与 parseInt() 和 parseFloat() 不同,Number() 会尝试将字符串中的所有字符转换为数字。如果字符串中包含非数字字符,则将返回 NaN(非数字)。
const num1 = Number("123"); // 123
const num2 = Number("0b1111"); // NaN
const num3 = Number("0o17"); // NaN
const num4 = Number("0x0f"); // NaN

比较

下表比较了 parseInt()、parseFloat() 和 Number() 函数:| 函数 | 解析进制 | 处理非数字字符 |
|---|---|---|
| parseInt() | 是(可指定) | 忽略 |
| parseFloat() | 否 | 忽略 |
| Number() | 否 | 返回 NaN |

最佳实践

在选择要使用的函数时,考虑以下最佳实践:* 如果您需要解析整数,请使用 parseInt()。
* 如果您需要解析浮点数,请使用 parseFloat()。
* 如果您不确定字符串中包含什么类型的数据,请使用 Number()。

在 JavaScript 中将字符串转换为数字是一个简单的操作,有多种方法可以实现。通过理解这些方法之间的差异,您可以选择最适合您特定需求的方法。

2024-12-31


上一篇:JavaScript排序:快速指南

下一篇:JavaScript 数组删除元素的终极指南