JavaScript中string转换成number介绍


Posted in Javascript onDecember 31, 2014

JavaScript中,可以通过以下3种方法来将string值转换成number:

1.调用Number()来对string进行值类型转换。
2.parseInt()。
3.parseFloat()。

Number()

使用Number()函数来对string进行强制类型转换是最直接的做法。不过,这种做法有一个局限性:如果字符串截去开头和结尾的空白字符后,不是纯数字字符串,那么最终返回结果为NaN。David Flanagan的JavaScript ? The Definitive Guide 6th edition, 3.8.2节提到,用Number()函数来进行string-to-number转换时,函数只接受10进制字符串,但测试结果表明事实并非如此,Number()函数可以接受”0xff”作为参数并将其转换成数值255。

var a = " 42";

var b = " 42mm";

var c = "0xff";

var d = "42.34";
console.log(Number(a));//42

console.log(Number(b));//NaN

console.log(Number(c));//255

console.log(Number(d));//42.34

parseInt()

parseInt()函数可以将字符串转换成一个整数,与Number()函数相比,parseInt()函数不仅可以解析纯数字字符串,也可以解析以数字开头的部分数字字符串(非数字部分字符串在转换过程中会被去除)。值得注意的是,当parseInt()函数所解析的是浮点数字符串时,取整操作所使用的方法为“向下取整”(truncate)。

除了字符串作为第一个参数,parseInt()函数还可以接受2到36之间的任意整数作为第二个参数,用于指定转换过程中的进制数。

var b = " 42mm";

var c = "0xff";

var x = "-12.34";

var y = "15.88";

var z = "101010";
console.log(parseInt(b));//42

console.log(parseInt(x));//-12

console.log(parseInt(y));//15

console.log(parseInt(c));//255

console.log(parseInt(z, 2));//42

console.log(parseInt(".1"));//NaN

parseFloat()

与parseInt()一样,parseFloat()也可以解析以数字开头的部分数字字符串(非数字部分字符串在转换过程中会被去除)。与parseInt()不同的是,parseFloat()可以将字符串转换成浮点数;但同时,parseFloat()只接受一个参数,且仅能处理10进制字符串。

var c = "0xff";

var d = "42.34";
console.log(parseFloat(c));//0, because "0xff" start with 0

console.log(parseFloat(d));//42.34

console.log(parseFloat(".1"));//0.1
Javascript 相关文章推荐
javascript 简练的几个函数
Aug 29 Javascript
Javascript中的window.event.keyCode使用介绍
Apr 26 Javascript
JavaScript中的变量定义与储存介绍
Dec 31 Javascript
分享jQuery网页元素拖拽插件
Dec 01 Javascript
JSON格式的时间/Date(2367828670431)/格式转为正常的年-月-日 格式的代码
Jul 27 Javascript
AngularJS基础 ng-include 指令示例讲解
Aug 01 Javascript
Vue中组件之间数据的传递的示例代码
Sep 08 Javascript
你应该知道的几类npm依赖包管理详解
Oct 06 Javascript
webstorm中vue语法的支持详解
May 09 Javascript
JS实现可切换图片的幻灯切换效果示例
May 24 Javascript
vue语法自动转typescript(解放双手)
Sep 18 Javascript
video.js添加自定义组件的方法
Dec 09 Javascript
JavaScript中的object转换函数toString()与valueOf()介绍
Dec 31 #Javascript
JavaScript中的object转换成number或string规则介绍
Dec 31 #Javascript
javascript 事件处理示例分享
Dec 31 #Javascript
JavaScript中的变量作用域介绍
Dec 31 #Javascript
JavaScript中的变量定义与储存介绍
Dec 31 #Javascript
JavaScript中的操作符==与===介绍
Dec 31 #Javascript
jQuery中[attribute]选择器用法实例
Dec 31 #Javascript
You might like
我用php+mysql写的留言本
2006/10/09 PHP
用缓存实现静态页面的测试
2006/12/06 PHP
PHP 反射(Reflection)使用实例
2015/05/12 PHP
php给图片加文字水印
2015/07/31 PHP
DEFER怎么用?
2006/07/01 Javascript
JS与框架页的操作代码
2010/01/17 Javascript
JavaScript CSS 修改学习第四章 透明度设置
2010/02/19 Javascript
JQuery中对服务器控件 DropdownList, RadioButtonList, CheckboxList的操作总结
2011/06/28 Javascript
extjs中form与grid交互数据(record)的方法
2013/08/29 Javascript
jQuery使用$.get()方法从服务器文件载入数据实例
2015/03/25 Javascript
详解Vue Elememt-UI构建管理后台
2018/02/27 Javascript
详解JSON和JSONP劫持以及解决方法
2019/03/08 Javascript
js实现滑动滑块验证登录
2020/07/24 Javascript
[02:26]DOTA2英雄米拉娜基础教程
2013/11/25 DOTA
Python正则表达式匹配HTML页面编码
2015/04/08 Python
pygame学习笔记(4):声音控制
2015/04/15 Python
Python中functools模块函数解析
2017/03/12 Python
Pandas 数据框增、删、改、查、去重、抽样基本操作方法
2018/04/12 Python
python使用turtle绘制分形树
2018/06/22 Python
更新pip3与pyttsx3文字语音转换的实现方法
2019/08/08 Python
Pytorch之卷积层的使用详解
2019/12/31 Python
python opencv实现简易画图板
2020/08/27 Python
Qoo10台湾站:亚洲领先的在线市场
2018/05/15 全球购物
同学聚会欢迎辞
2014/01/14 职场文书
关于美容院的活动方案
2014/08/14 职场文书
公司向个人借款协议书范本
2014/10/09 职场文书
2014年惩防体系建设工作总结
2014/12/01 职场文书
2015年小学生新年寄语
2014/12/08 职场文书
广告业务员岗位职责
2015/02/13 职场文书
2015年出纳年终工作总结
2015/05/14 职场文书
2015年音乐教研组工作总结
2015/07/22 职场文书
信息技术研修心得体会
2016/01/08 职场文书
zabbix自定义监控nginx状态实现过程
2021/11/01 Servers
解决MySQL Varchar 类型尾部空格的问题
2022/04/06 MySQL
Python使用socket去实现TCP客户端和TCP服务端
2022/04/12 Python
Spring Boot 的创建和运行示例代码详解
2022/07/23 Java/Android