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 相关文章推荐
EXT中xtype的含义分析
Jan 07 Javascript
JavaScript 原型学习总结
Oct 29 Javascript
再论Javascript的类继承
Mar 05 Javascript
php对mongodb的扩展(小试牛刀)
Nov 11 Javascript
javascript一元操作符(递增、递减)使用示例
Aug 07 Javascript
基于JQuery实现仿网易邮箱全屏动感滚动插件fullPage
Sep 20 Javascript
javascript基础语法——全面理解变量和标识符
Jun 02 Javascript
微信小程序 wxapp导航 navigator详解
Oct 31 Javascript
jquery-mobile基础属性与用法详解
Nov 23 Javascript
结合mint-ui移动端下拉加载实践方法总结
Nov 08 Javascript
vue移动端html5页面根据屏幕适配的四种解决方法
Oct 19 Javascript
微信小程序 腾讯地图显示偏差问题解决
Jul 27 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中的array数组类型分析说明
2010/07/27 PHP
PHP学习之输出字符串(echo,print,printf,print_r和var_dump)
2011/04/17 PHP
PHP跨时区(UTC时间)应用解决方案
2013/01/11 PHP
PHP实现动态删除XML数据的方法示例
2018/03/30 PHP
基于JQuery实现CheckBox全选全不选
2011/06/27 Javascript
通过JS获取用户本地图片路径并显示的代码
2012/02/16 Javascript
ajax java 实现自动完成功能
2012/12/19 Javascript
jquery 延迟执行实例介绍
2013/08/20 Javascript
jquery等宽输出文字插件使用介绍
2013/09/18 Javascript
详解Javascript动态操作CSS
2014/12/08 Javascript
JavaScript模块规范之AMD规范和CMD规范
2015/10/27 Javascript
Bootstrap入门书籍之(四)菜单、按钮及导航
2016/02/17 Javascript
利用BootStrap弹出二级对话框的简单实现方法
2016/09/21 Javascript
jQuery动态增减行的实例代码解析(推荐)
2016/12/05 Javascript
js实现简单的网页换肤效果
2017/01/18 Javascript
react-router实现跳转传值的方法示例
2017/05/27 Javascript
JS实现的随机排序功能算法示例
2017/06/09 Javascript
JavaScript中使用import 和require打包后实现原理分析
2018/03/07 Javascript
Vue项目自动转换 px 为 rem的实现方法
2018/10/29 Javascript
详解vue项目中调用百度地图API使用方法
2019/04/25 Javascript
ES6如何用一句代码实现函数的柯里化
2020/01/18 Javascript
浅析Vue 中的 render 函数
2020/02/28 Javascript
JS事件循环机制event loop宏任务微任务原理解析
2020/08/04 Javascript
[01:07:20]DOTA2-DPC中国联赛 正赛 Dynasty vs XG BO3 第二场 2月2日
2021/03/11 DOTA
Python随机生成彩票号码的方法
2015/03/05 Python
Python中使用dom模块生成XML文件示例
2015/04/05 Python
Python fileinput模块使用实例
2015/06/03 Python
python中MethodType方法介绍与使用示例
2017/08/03 Python
Django实现简单分页功能的方法详解
2017/12/05 Python
python主线程捕获子线程的方法
2018/06/17 Python
Python 实现数据结构-堆栈和队列的操作方法
2019/07/17 Python
tensorflow的ckpt及pb模型持久化方式及转化详解
2020/02/12 Python
用pandas划分数据集实现训练集和测试集
2020/07/20 Python
机电工程专业应届生求职信
2013/10/03 职场文书
大学生职业生涯规划书范文
2014/01/04 职场文书
洗发水广告词
2014/03/13 职场文书