广告
返回顶部
首页 > 资讯 > 前端开发 > JavaScript >javascript中如何将字符串转换成数字
  • 115
分享到

javascript中如何将字符串转换成数字

javascript字符串javascript数字js字符串转换数字 2023-02-10 12:02:02 115人浏览 泡泡鱼
摘要

目录转换方法javascript将字符串转换成数字方法1方法2方法3方法4总结转换方法 1、利用“-”、“*”、“/&rd

转换方法

  • 1、利用“-”、“*”、“/”、“%”、“++”、“--”等运算符;
  • 2、使用“Number(值)”语句;
  • 3、使用“parseInt(stringNum)”语句;
  • 4、使用“parseFloat(stringNum)”语句。

教程操作环境:windows7系统、javascript1.8.5版。

javascript将字符串转换成数字

方法1

使用-、*、/、%、++、--等运算符

JavaScript 会自动将字符串转换成数字,对无法转换为数字的则转换为 NaN。例如:

alert("30"/5);   //除运算,结果为:6

alert("15"-5);   //减运算,结果为:10

alert("20"*"a"); //乘运算,结果为:NaN

alert("20"%"3"); //取模运算,结果为:2
var num1 = "6";

var num2 = "6";

var num3 = "a";

alert(++num1);  //将字符串转换为数字再进行++运算,结果为:7

alert(--num2);  //将字符串转换为数字再进行--运算,结果为:5

alert(++num3);  //字符串无法转换为数字,结果为:NaN

方法2

使用Number()函数

Number()函数可以将参数转换为一个数字

使用格式如下:

Number(value)

Number() 对参数 value 进行整体转换,当参数值中任何地方包含了无法转换为数字的符号时,转换失败,此时将返回 NaN,否则返回转换后的数字。

Number() 对参数进行数字转换时,遵循以下一些规则:

  • 如果参数中只包含数字时,将转换为十进制数字,忽略前导 0 以及前导空格;如果数字前面为-,-会保留在转换结果中;如果数字前面为+,转换后将删掉+号;
  • 如果参数中包含有效浮点数字,将转换为对应的浮点数字,忽略前导 0 以及前导空格;如果数字前面为-,-会保留在转换结果中;如果数字前面为+,转换后将删掉+号;
  • 如果参数中包含有效的十六进制数字,将转换为对应大小的十进制数字;
  • 如果参数为空字符串,将转换为 0;
  • 如果参数为布尔值,则将 true 转换为 1,将 false 转换为 0;
  • 如果参数为 null,将转换为 0;
  • 如果参数为 undefined,将转换为 NaN;
  • 如果参数为 Date 对象,将转换为从 1970 年 1 月 1 日到执行转换时的毫秒数;
  • 如果参数为函数、包含两个元素以上的数组对象以及除 Date 对象以外的其他对象,将转换为 NaN;

如果在参数前面包含了除空格、+和-以外的其他特殊符号或非数字字符,或在参数中间包含了包括空格、+和-的特殊符号或非数字字符,将转换为 NaN。

转换示例:

alert(Number("0010"));  //去掉两个前导0,结果为:10

alert(Number("+010"));  //去掉前导0和+,结果为:10

alert(Number("-10"));  //转换后保留“-”号,结果为:-10

alert(Number(''));      //空字符串的转换结果为:0

alert(Number(true));   //布尔值true的转换结果为:1

alert(Number(null));   //null值的转换结果为:0

var d = new Date();      //创建一个Date对象

alert(Number(d));     //转换Date对象,结果为1970.1.1至执行转换时的毫秒数:1511351635179

alert(Number("100px"));   //参数中包含了不能转换为数字的字符px,结果为:NaN

alert(Number("100 01"));  //参数中包含了空格,导致整个参数不能转换,结果为:NaN

alert(Number("100-123")); //参数中包含了“-”,导致整个参数不能转换,结果为:NaN

var a;                   //声明变量

alert(Number(a));     //变量a没有赋值,因而a的值为undefined,转换undefined的结果为:NaN

var fn = function (){alert(1);}; //创建一个函数对象

alert(Number(fn));     //转换函数,结果为:NaN

alert(Number(window)); //转换window对象,结果为:NaN

从上述示例中,我们也可以看到,Number() 是从整体上进行转换的,任何一个地方含有非法字符,都将导致转换无法成功。

接下来将介绍的两个函数与 Number() 不同的是,转换是从左到右逐位进行转换,任何一位无法转换时立即停止转换,同时返回已成功转换的值。

方法3

使用parseInt()函数

parseInt()函数可以将参数转换为一个整数

使用格式如下:

parseInt(stringNum,[radix])

stringNum 参数为需要转换为整数的字符串;radix 参数为 2~36 之间的数字,表示 stringNum 参数的进制数,取值为 10 时可省略。

parseInt() 的作用是将以 radix 为基数的 stringNum 字符串参数解析成十进制数。若 stringNum 字符串不是以合法的字符开头,则返回 NaN;解析过程中如果遇到不合法的字符,将马上停止解析,并返回已经解析的值。

parseInt() 在解析字符串为整数时,遵循以下规则:

  • 解析字符串时,会忽略字符串前后的空格;如果字符串前面为-,-会保留在转换结果中;如果数字前面为+,转换后将删掉+号;
  • 如果字符串前面为除空格、+和-以外的特殊符号或除 a~f(或 A~F)之外的非数字字符,字符串将不会被解析,返回结果为 NaN;
  • 在字符串中包含了空格、+、-和小数点“。”等特殊符号或非数字的字符时,解析将在遇到这些字符时停止,并返回已解析的结果;
  • 如果字符串是空字符串,返回结果为 NaN。

转换示例:

alert(parseInt("1101",2));  //以2为基数的1101字符串解析后的结果为:13

alert(parseInt("a37f",16)); //以16为基数的a37f字符串解析后的结果为:41855

alert(parseInt("123"));     //以10为基数的123字符串解析后的结果为:123

alert(parseInt("  123"));   //字符串前面的空格会被忽略,结果为:123

alert(parseInt("12 3"));    //字符串中包含了空格,解析到空格时停止,结果为12

alert(parseInt("12.345")); //字符串中包含了小数点,解析到小数点时停止,结果为12

alert(parseInt("xy123"));  //字符串前面包含了非数字字符“x”,无法解析,返回结果为:NaN

alert(parseInt("123xy4")); //字符串中包含了非数字字符“xy”,解析到“x”时停止,结果为:123

从上述示例我们可以看到,parseInt() 解析浮点数时,小数部分数据会被截掉,此时需要使用下面将介绍的 parseFloat(),而不能使用 parseInt()。

方法4

使用parseFloat()函数

parseFloat()函数可以将参数转换为一个浮点数

使用格式如下:

parseFloat(stringNum)

stringNum 参数为需要解析为浮点型的字符串。

parseFloat() 的作用是将首位为数字的字符串转解析成浮点型数。若 stringNum 字符串不是以合法的字符开头,则返回 NaN;解析过程中如果遇到不合法的字符,将马上停止解析,并返回已经解析的值。

parseFloat() 在解析字符串为整数时,遵循以下规则:

  • 解析字符串时,会忽略字符串前后的空格;如果字符串前面为-,-会保留在转换结果中;如果数字前面为+,转换后将删掉+号;如果字符串前面为小数点.转换结果会在小数点前面添加 0;
  • 如果字符串前面为除空格、+、-和。以外的特殊符号,字符串将不会被解析,返回结果为 NaN;
  • 在字符串中包含了空格、+和-等特殊符号或非数字的字符时,解析将在遇到这些字符时停止,并返回已解析的结果;
  • 在字符串中包含两个以上为小数点时,解析到第二个小数点时将停止解析,并返回已解析的结果;
  • 如果字符串是空字符串,返回结果为 NaN。

转换示例:

alert(parseFloat("312.456"));//结果为:312.456

alert(parseFloat("-3.12"));//字符串前面的“-”将保留,结果为:-3.12

alert(parseFloat("+3.12"));//字符串前面的“-”将保留,结果为:3.12

alert(parseFloat(".12"));//在小数点前面添加0,结果为:0.12

alert(parseFloat("  3.12"));//截掉字符串前面的空格,结果为:3.12

alert(parseFloat("312.4A56"));//字符串中包含非数字字符A,解析到A时停止,结果为:312.4

alert(parseFloat("31 2.4A56"));//字符串中包含空格,解析到空格时停止,结果为:31

alert(parseFloat("31.2.5"));//字符串中包含两个小数点,解析到第二个小数点时停止,结果为:31.2

alert(parseFloat("a312.456"));//字符串前面为非数字字符a,解析无法进行,结果为:NaN

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持编程网。

--结束END--

本文标题: javascript中如何将字符串转换成数字

本文链接: https://www.lsjlt.com/news/195481.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • javascript中如何将字符串转换成数字
    目录转换方法javascript将字符串转换成数字方法1方法2方法3方法4总结转换方法 1、利用“-”、“*”、“/&rd...
    99+
    2023-02-10
    javascript字符串 javascript数字 js字符串转换数字
  • javascript如何将字符串转换成数字
    这篇文章将为大家详细讲解有关javascript如何将字符串转换成数字,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。 转换方法:1、利用“-”...
    99+
    2022-10-19
  • JavaScript如何使用+将字符串转换成数字
    这篇文章将为大家详细讲解有关JavaScript如何使用+将字符串转换成数字,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。使用+将字符串转换成数字这个技巧非常有用,其非常简单,可以交字符串数据转换成数字,...
    99+
    2023-06-27
  • javascript中如何将字符串转换为字符串数组
    本篇内容主要讲解“javascript中如何将字符串转换为字符串数组”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“javascript中如何将字符串转换为字符串...
    99+
    2022-10-19
  • JavaScript中数字如何转换成字符串
    这期内容当中小编将会给大家带来有关JavaScript中数字如何转换成字符串,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。JavaScript是什么JS是JavaScript的简称,它是一种直译式的脚本语...
    99+
    2023-06-14
  • javascript如何将字符转换成数字
    本篇内容主要讲解“javascript如何将字符转换成数字”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“javascript如何将字符转换成数字”吧! ...
    99+
    2022-10-19
  • JavaScript如何将字符串转换为数字
    小编给大家分享一下JavaScript如何将字符串转换为数字,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!将字符串转换为数字我们需要的只是 + 运算符。请注意它仅...
    99+
    2023-06-27
  • JavaScript如何将数字转换为字符串
    这篇文章给大家分享的是有关JavaScript如何将数字转换为字符串的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。将数字转换为字符串我们只需要使用带空引号的串联运算符。var converted_num...
    99+
    2023-06-27
  • php中怎么将数字转换成字符串
    PHP 是一门功能强大的服务器脚本语言,它支持将数字转换成字符串的功能。这项功能在某些情况下会非常有用,比如在处理表单输入、数据存储以及输出等方面。在本文中,我们将介绍 PHP 中如何将数字转换成字符串。一、使用 (string) 操作符P...
    99+
    2023-05-14
  • python怎么将数字转换成字符串
    可以使用str()函数将数字转换为字符串。例如:pythonnumber = 123string = str(number)prin...
    99+
    2023-10-20
    python
  • c语言如何将数字转换成字符串
    今天小编给大家分享一下c语言如何将数字转换成字符串的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。c语言将数字转换成字符串的方...
    99+
    2023-07-04
  • php 将数组转换成字符串
    PHP是一门流行的编程语言,用于创建交互式的web应用程序。在PHP中,数组是一种非常常用的数据类型,通常用于存储和处理大量数据。有时候,我们可能需要将一个数组转换成字符串,以便于数据的传输或存储。本文将介绍如何将PHP数组转换成字符串。i...
    99+
    2023-05-23
  • php如何将数组转换成字符串
    在php中使用implode函数将数组转换成字符串:implode函数是用于返回一个由数组元素组合成的字符串,语法:implode(separator,array);在php中使用implode函数将数组转换成字符串,具体方法如下:impl...
    99+
    2022-10-09
  • php如何将字符串转换成小数
    今天小编给大家分享一下php如何将字符串转换成小数的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。首先,我们需要注意一些基础知...
    99+
    2023-07-05
  • javascript怎么将字符串转换为数字
    这篇文章将为大家详细讲解有关javascript怎么将字符串转换为数字,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。JavaScript可以做什么1.可以使网页具有交互性,例如响应用户点击,给用户提供更好...
    99+
    2023-06-14
  • javascript中字符串如何转换成数组
    这篇文章主要讲解了“javascript中字符串如何转换成数组”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“javascript中字符串如何转换成数组”吧!...
    99+
    2022-10-19
  • 怎么在python中将字符串转换成数字
    这篇文章给大家介绍怎么在python中将字符串转换成数字,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。python主要应用领域有哪些1、云计算,典型应用OpenStack。2、WEB前端开发,众多大型网站均为Pytho...
    99+
    2023-06-14
  • java中如何将字符串转换成int
    在Java中,可以使用`Integer.parseInt()`方法将字符串转换为整数。下面是一个示例代码:```javaString...
    99+
    2023-09-09
    java
  • mysql将字符串转成数字
    //需要先转换成数字再进行排序 1.直接用加法   字符串+0 eg:   select * from orders order by (mark+0)  desc 2.使用函数 CAST(value as type); CON...
    99+
    2015-10-22
    mysql将字符串转成数字 数据库入门 数据库基础教程 数据库 mysql
  • php中将数组转换成json字符串
    JSON(JavaScript Object Notation)是一种常用的数据交换格式,它使用文本格式,支持多种编程语言,尤其适合在Web和移动应用中使用。在PHP中,我们可以很容易地将一个数组转换为JSON字符串。在PHP中,我们可以使...
    99+
    2023-05-19
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作