`

字符串转换成数字的三种方法

 
阅读更多

最近经常遇到关于类型转换的问题,索性上网搜搜在此总结一篇

js字符转换成数字主要有三种可用的方法:转换函数、强制类型转换、利用js变量弱类型转换。

1. 转换函数

js提供了parseInt()和parseFloat()两个转换函数。前者把值转换成整数,后者把值转换成浮点数。只有对String类型调用这些方法,这两个函数才能正确运行,对其他类型返回的都是NaN

parseInt() 函数

可解析一个字符串,并返回一个整数。

parseInt(string, radix)

radix 可选。表示要解析的数字的基数(进制)。该值介于 2 ~ 36 之间。

如果省略该参数或其值为 0,则数字将以 10 为基础来解析。如果它以 “0x” 或 “0X” 开头,将以 16 为基数。

如果该参数小于 2 或者大于 36,则 parseInt() 将返回 NaN。

返回值:返回解析后的数字。

*如果字符串的第一个字符不能被转换为数字,那么 parseFloat() 会返回 NaN

*如果 string 以 "0x" 开头,parseInt() 会把 string 的其余部分解析为十六进制的整数。

*如果 string 以 0 开头,那么允许 parseInt() 的一个实现把其后的字符解析为八进制或十六进制的数字。

*如果 string 以 1 ~ 9 的数字开头,parseInt() 将把它解析为十进制的整数。

一些示例如下:

parseInt("1234blue"); // returns 1234

parseInt("0xA"); //returns 10

parseInt("22.5"); //returns 22

parseInt("blue"); //returns NaN

parseInt()方法还有基模式,可以把二进制、八进制、十六进制或其他任何进制的字符串转换成整数。基数是由parseInt()方法的第二个参数指定的,示例如下:

 

parseInt("AF",16); //returns 175
parseInt("10",2); //returns 2
parseInt("10",8); //returns 8
parseInt("10",10); //returns 10

 如果十进制数包含前导0,那么最好采用基数10,这样才不会意外地得到八进制的值。例如:

 

parseInt("010"); //returns 10
parseInt("010", 8); //returns 8
parseInt("010", 10); //returns 10

 parseFloat() 函数可解析一个字符串,并返回一个浮点数。

该函数判断字符串中的首个字符是否是数字,如果是,则对字符串进行解析,然后以数字返回该数字,而不是作为字符串。

*如果参数字符串的第一个字符不能被解析成为数字,则 parseFloat 返回 NaN。

*可以通过调用 isNaN 函数来判断 parseFloat 的返回结果是否是 NaN。

*开头和结尾的空格是允许的。

*如果只想解析数字的整数部分,请使用 parseInt() 方法。

示例如下:

 

parseFloat("1234blue"); //returns 1234
parseFloat("0xA"); //returns 0
parseFloat("22.5"); //returns 22.5
parseFloat("22.34.5"); //returns 22.34
parseFloat("0908"); //returns 908  //  parseFloat 针对开头为 0 0的处理
parseFloat("blue"); //returns NaN

 parseFloat()方法与parseInt()方法相似,不同之处在于,parseFloat必须以十进制形式表示浮点数,没有基模式。

 

2.强制类型转换

Boolean(value)——把给定的值转换成Boolean型;

Number(value)——把给定的值转换成数字(可以是整数或浮点数);

String(value)——把给定的值转换成字符串。

3. 利用js变量弱类型转换

举个小例子,一看,就会明白了。

var str = 5332355';

var x = str - 0;

x = x * 1;

 

利用了js的弱类型的特点,只进行了算术运算,实现了字符串到数字的类型转换,不过这个方法还是不推荐的。存在一些安全问题。

分享到:
评论

相关推荐

    【js,字符串转换成数字的三种方法】js转化为字符串[修改版].pdf

    在JavaScript中,将字符串转换为数字有多种方法,主要分为转换函数、强制类型转换和利用JavaScript的弱类型转换特性。以下是对这些方法的详细说明: 1. 转换函数: - `parseInt()`:这个函数用于将字符串转换为...

    js 字符串转换成数字的三种方法.pdf

    在JavaScript中,将字符串转换为数字有三种主要的方法:转换函数、强制类型转换以及利用JavaScript的弱类型转换特性。下面将详细阐述每种方法及其应用。 1. **转换函数** - `parseInt()`:这个函数主要用于将字符...

    【js,字符串转换成数字的三种方法】js转化为字符串[修改版].docx

    在JavaScript中,将字符串转换为数字有多种方法,主要涉及`parseInt()`、`parseFloat()`以及类型转换。这些方法在处理数字数据时非常关键,因为JavaScript中的数据类型是动态的,需要根据实际需求进行类型转换。 1....

    js字符串转换成数字.docx

    在JavaScript中,将字符串转换为数字是一个常见的操作,主要涉及三种方法:转换函数、强制类型转换以及利用JavaScript的弱类型转换特性。 1. **转换函数**: - `parseInt()`:这个函数主要用于将字符串转换为整数...

    C#中字符串的格式化及转换成数值的方法

    在C#中,将一个表示数字的字符串转换为整数类型的最常用方法是使用`Convert.ToInt32`函数或`int.Parse`方法。 **示例:** ```csharp string str = "1234"; int i = Convert.ToInt32(str); ``` 这里,`Convert.To...

    字符串转换成计算数值公式(c#)

    首先,C#提供了一些内置的方法来处理基本的数学运算,如`int.Parse()`或`double.Parse()`,它们可以将字符串转换为整数或浮点数。但这些方法无法处理复杂的数学公式,例如涉及括号、加减乘除、指数等操作的表达式。...

    字符串转换为对应数

    ### 字符串转换为对应数值:进制转换详解 #### 一、概述 在计算机科学领域,经常需要处理不同进制的数据转换问题。本篇文章主要介绍如何将字符串形式的数值转换为对应的数值类型,特别是针对十六进制字符串的转换...

    字符串,整型数据,字符型数组互相转换源码

    在C++中,可以使用`std::stoi()`函数将字符串转换为整型。例如: ```cpp #include #include int main() { std::string str = "123"; int num = std::stoi(str); std::cout 转换后的整型数值为:" ; return 0;...

    C++将文本字符串转换成BMP图片

    本篇文章将深入探讨如何使用C++编程语言将文本字符串转换成BMP(Bitmap)图片。 首先,我们需要了解BMP文件格式。BMP是Windows操作系统中常见的位图文件格式,它存储的是未经压缩的像素数据,包括图像宽度、高度、...

    关于js中字符串转换成数字的问题

    ### 关于JS中字符串转换成数字的问题 在JavaScript(简称JS)编程中,字符串与数字之间的转换是一项常用且重要的操作。对于开发人员来说,能够熟练掌握这些转换方法是十分必要的。根据提供的信息,本文将详细介绍...

    C中数字与字符串转换方法.doc

    本文将详细介绍C中数字与字符串转换的各种方法。 ### 一、字符串转数字 1. **CRT函数**: - `atoi()`, `_atoi_l()`, `_wtoi()`: 这些函数用于将ASCII、宽字符或TCHAR形式的字符串转换为整数。例如,`atoi("123")`...

    js字符串转换成数字与数字转换成字符串的实现方法

    在JavaScript中,字符串转换成数字和数字转换成字符串是常见的类型转换操作,这对于处理用户输入、计算和其他数据处理任务至关重要。下面将详细讲解这两种转换的方法。 **字符串转换成数字** 1. **parseInt()函数*...

    获取字符串中的数字(两种方法)

    根据给定的信息,本文将详细介绍如何通过两种方法在C#编程语言中提取字符串中的数字。 ### 一、问题背景 在处理文本数据时,我们经常需要从字符串中提取出特定的信息,比如数字。例如,在一个包含混合字母和数字的...

    javascript字符型转换成整型

    `parseInt()` 是JavaScript中最常用的一种将字符串转换为整数的方法之一。它的基本语法如下: ```javascript parseInt(string, radix); ``` - **string**:需要被转换的字符串。 - **radix**:可选参数,表示解析...

    TIA博途-字符转换为字符串以及截取字符串有效字符的具体方法示例.docx

    在自动化和工业控制领域,TIA博途( Totally Integrated Automation...以上就是在TIA博途中,字符转换为字符串以及截取字符串有效字符的具体方法。理解并熟练运用这些技术,能帮助我们在处理通信数据时更加高效和准确。

    判断一个字符串或字符串中的一个字符是否为数字类型

    - 安全性:在处理用户输入时,应避免直接将未经验证的字符串转换为数字,以防 SQL 注入或其他攻击。可以先进行验证,再进行转换。 - 效率:正则表达式可能比简单的遍历更慢,但在大多数情况下,性能差异微不足道。...

    json特殊字符串转换

    本篇文章将深入探讨JSON中的特殊字符串转换,以及如何正确处理它们。 一、JSON特殊字符与转义 在JSON中,字符串必须用双引号(")括起来。如果字符串内部需要包含双引号,或者其他特殊字符如反斜杠(\)、换行符...

    字符串转换为Ascii码

    本例提供了一种将字符串转换为ASCII码值并再转换回原始字符串的方法。需要注意的是,这里的ASCII码值转换过程中还增加了一个递增的数值,这并不是通常的ASCII码转换过程的一部分。这种处理方式可能会导致转换后的...

    js 字符串转换数字.pdf

    在JavaScript中,将字符串转换为数字是常见的操作,特别是在处理用户输入或解析数据时。有三种主要的方法可以完成这个任务。 1. **转换函数**: - `parseInt()`:此函数用于将字符串转换为整数。它会忽略字符串...

    实例分析PHP将字符串转换成数字的方法

    在PHP编程中,将字符串转换成数字是一个常见的需求,尤其是在处理用户输入或从文件中读取数据时。本文将通过实例分析的方式,介绍四种在PHP中将字符串转换成数字的方法。 第一种方法是使用 `number_format()` 函数...

Global site tag (gtag.js) - Google Analytics