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中Eval函数的使用说明
Oct 11 Javascript
javascript学习笔记(七) js函数介绍
Jun 19 Javascript
网页中可关闭的漂浮窗口实现可自行调节
Aug 20 Javascript
js输入框邮箱自动提示功能代码实现
Dec 10 Javascript
JS+CSS实现电子商务网站导航模板效果代码
Sep 10 Javascript
网页从弹窗页面单选框传值至父页面代码分享
Sep 29 Javascript
jQuery.deferred对象使用详解
Mar 18 Javascript
JavaScript  event对象整理及详细介绍
Oct 10 Javascript
angular.js 路由及页面传参示例
Feb 24 Javascript
jQuery中过滤器的基本用法示例
Oct 11 jQuery
Vue.js实现双向数据绑定方法(表单自动赋值、表单自动取值)
Aug 27 Javascript
webpack 如何同时输出压缩和未压缩的文件的实现步骤
Jun 05 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
PHP5中的this,self和parent关键字详解教程
2007/03/19 PHP
php 字符转义 注意事项
2009/05/27 PHP
JS中彻底删除JSON对象组成的数组中的元素
2020/09/22 PHP
JavaScript的面向对象(二)
2006/11/09 Javascript
JQuery select标签操作代码段
2010/05/16 Javascript
怎么清空javascript数组
2013/05/11 Javascript
js 获取页面高度和宽度兼容 ie firefox chrome等
2014/05/14 Javascript
JS应用正则表达式转换大小写示例
2014/09/18 Javascript
JS访问SWF的函数用法实例
2015/07/01 Javascript
jQuery实现图片走马灯效果的原理分析
2016/01/16 Javascript
关于javascript原型的修改与重写(覆盖)差别详解
2016/08/31 Javascript
JavaScript中push(),join() 函数 实例详解
2016/09/06 Javascript
利用js判断手机是否安装某个app的多种方案
2017/02/13 Javascript
Angular.js通过自定义指令directive实现滑块滑动效果
2017/10/13 Javascript
关于vue v-for循环解决img标签的src动态绑定问题
2018/09/18 Javascript
JS散列表碰撞处理、开链法、HashTable散列示例
2019/02/08 Javascript
如何实现一个简易版的vuex持久化工具
2019/09/11 Javascript
解决Vue动态加载本地图片问题
2019/10/09 Javascript
Vue.js实现立体计算器
2020/02/22 Javascript
TypeScript 运行时类型检查补充工具
2020/09/28 Javascript
ant design vue 表格table 默认勾选几项的操作
2020/10/31 Javascript
vue基于Echarts的拖拽数据可视化功能实现
2020/12/04 Vue.js
python处理Excel xlrd的简单使用
2017/09/12 Python
pyqt5自定义信号实例解析
2018/01/31 Python
python利用smtplib实现QQ邮箱发送邮件
2020/05/20 Python
Python3实现转换Image图片格式
2018/06/21 Python
Python学习笔记之视频人脸检测识别实例教程
2019/03/06 Python
NumPy 基本切片和索引的具体使用方法
2019/04/24 Python
Python正则表达式匹配数字和小数的方法
2019/07/03 Python
pytorch sampler对数据进行采样的实现
2019/12/31 Python
Python处理mysql特殊字符的问题
2020/03/02 Python
创新比赛获奖感言
2014/02/13 职场文书
2014两会学习心得:榜样精神伴我行
2014/03/17 职场文书
公司开会通知
2015/04/20 职场文书
2016年习主席讲话学习心得体会
2016/01/20 职场文书
Three.js实现雪糕地球的使用示例详解
2022/07/07 Javascript