📌  相关文章
📜  在 js 中转换字符串中的数字 - Javascript (1)

📅  最后修改于: 2023-12-03 15:07:41.588000             🧑  作者: Mango

在 js 中转换字符串中的数字 - Javascript

在 Javascript 中,经常需要将字符串中的数字转换为实际数字。这非常有用,因为 JavaScript 中许多函数只接受数字类型参数。以下是一些常用的函数,可以用于在 JavaScript 中转换字符串中的数字。

parseInt

parseInt 函数将字符串解析为整数。如果字符串中包含数字以外的字符,则从第一个数字字符之后停止解析字符串。可以传递第二个参数作为基数,以确定要使用的进制。如果未指定基数,则默认为十进制。

let str = "123";
let num = parseInt(str);
console.log(num); // 输出: 123
let str = "0xFF";
let num = parseInt(str, 16);
console.log(num); // 输出: 255
parseFloat

parseFloat 函数将字符串解析为浮点数。如果字符串中不包含有效数字,则返回 NaN。与 parseInt 函数类似,如果字符串中包含数字以外的字符,则从第一个数字字符之后停止解析字符串。

let str = "3.14";
let num = parseFloat(str);
console.log(num); // 输出: 3.14
let str = "3.14abcd";
let num = parseFloat(str);
console.log(num); // 输出: 3.14
Number

Number 构造函数可以将任何类型的值转换为数字。如果参数是数字,则返回相应的数字。如果参数是字符串,则返回解析的数字。如果字符串不能解析为数字,则返回 NaN。如果参数是对象,Number 函数将调用对象的 valueOf 方法,如果返回的是原始类型,则将其转换为数字,否则调用对象的 toString 方法,并将返回的字符串解析为数字。

let str = "123";
let num = Number(str);
console.log(num); // 输出: 123
let str = "3.14";
let num = Number(str);
console.log(num); // 输出: 3.14
let str = "abcd";
let num = Number(str);
console.log(num); // 输出: NaN
Unary Plus (+) Operator

一元加号运算符(+)可以将任何类型的值转换为数字。如果参数是数字,则返回相应的数字。如果参数是字符串,则返回解析的数字。如果字符串不能解析为数字,则返回 NaN。如果参数是对象,则先尝试调用对象的 valueOf 方法,如果返回的是原始类型,则将其转换为数字,否则调用对象的 toString 方法,并将返回的字符串解析为数字。

let str = "123";
let num = +str;
console.log(num); // 输出: 123
let str = "3.14";
let num = +str;
console.log(num); // 输出: 3.14
let str = "abcd";
let num = +str;
console.log(num); // 输出: NaN

以上是在 JavaScript 中转换字符串中的数字的一些常见方法。可以根据情况选择使用其中的某一个或多个。如果字符串中包含有效数字,则建议使用一元加号或 Number 函数来转换字符串,否则可以使用 parseIntparseFloat 函数。