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 相关文章推荐
使用jquery插件实现图片延迟加载技术详细说明
Mar 12 Javascript
node.js解决获取图片真实文件类型的问题
Dec 20 Javascript
js制作简易年历完整实例
Jan 28 Javascript
深入理解JavaScript系列(17):面向对象编程之概论详细介绍
Mar 04 Javascript
原生js结合html5制作简易的双色子游戏
Mar 30 Javascript
JS实现点击复选框将按钮或文本框变为灰色不可用的方法
Aug 11 Javascript
弹出遮罩层后禁止滚动效果【实现代码】
Apr 29 Javascript
如何使用jquery实现文字上下滚动效果
Oct 12 Javascript
仿iframe效果Aajx文件上传实例
Nov 18 Javascript
jQuery插件FusionCharts绘制2D柱状图和折线图的组合图效果示例【附demo源码】
Apr 10 jQuery
jQuery实现每隔一段时间自动更换样式的方法分析
May 03 jQuery
vue本地构建热更新卡顿的问题“75 advanced module optimization”完美解决方案
Aug 05 Vue.js
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不用正则验证真假身份证
2013/11/06 PHP
PHP中使用curl入门教程
2015/07/02 PHP
PHP代码维护,重构变困难的4种原因分析
2016/01/25 PHP
PHP开发之归档格式phar文件概念与用法详解【创建,使用,解包还原提取】
2017/11/17 PHP
PHP分享图片的生成方法
2018/04/25 PHP
laravel实现前后台路由分离的方法
2019/10/13 PHP
jquery模拟LCD 时钟的html文件源代码
2014/06/16 Javascript
javascript 中__proto__和prototype详解
2014/11/25 Javascript
jquery获取当前日期的方法
2015/01/14 Javascript
JavaScript使用Replace进行字符串替换的方法
2015/04/14 Javascript
jq实现左侧显示图片右侧文字滑动切换效果
2015/08/04 Javascript
基于jquery步骤进度条源码分享
2015/11/12 Javascript
基于javascript编写简单日历
2016/05/02 Javascript
AngularJS全局scope与Isolate scope通信用法示例
2016/11/22 Javascript
详解Bootstrap各式各样的按钮(推荐)
2016/12/13 Javascript
jQuery实现简单的滑动导航代码(移动端)
2017/05/22 jQuery
深究AngularJS之ui-router详解
2017/06/13 Javascript
Vue Router的懒加载路径的解决方法
2018/06/21 Javascript
Vue加载组件、动态加载组件的几种方式
2018/08/31 Javascript
如何使用CSS3+JQuery实现悬浮墙式菜单
2019/06/18 jQuery
node基于async/await对mysql进行封装
2019/06/20 Javascript
如何利用node转发请求详解
2020/09/17 Javascript
vue 实现element-ui中的加载中状态
2020/11/11 Javascript
[52:20]DOTA2-DPC中国联赛正赛 SAG vs XGBO3 第一场 3月5日
2021/03/11 DOTA
Python EOL while scanning string literal问题解决方法
2020/09/18 Python
python操作mysql数据库
2017/03/05 Python
一个基于flask的web应用诞生 使用模板引擎和表单插件(2)
2017/04/11 Python
Python中顺序表的实现简单代码分享
2018/01/09 Python
Python字典生成式、集合生成式、生成器用法实例分析
2020/01/07 Python
python3.x中安装web.py步骤方法
2020/06/23 Python
python调用私有属性的方法总结
2020/07/24 Python
个性与发展自我评价
2014/02/11 职场文书
庆七一宣传标语
2014/10/08 职场文书
初三毕业评语
2014/12/26 职场文书
乡镇团委工作总结2015
2015/05/26 职场文书
2015年语言文字工作总结
2015/07/23 职场文书