JavaScript数值转换的三种方式总结


Posted in Javascript onJuly 31, 2014

在JavaScript中,数值转换一般有三种方式:

一、Number(param)函数:param可以用于任何数据类型

1.1 param是Boolean值,true和false分别转换为1和0;

1.2 param是数值,只是简单的传入和返回

1.3 param是null和undefined,分别返回0和NaN

1.4 param是字符串,遵循下列规则:

1.4.1 如果字符串中只包含数字,则转换为十进制,前导0被忽略;

1.4.2 如果字符串中包含有效的浮点数格式,则返回对应的浮点数值,前导0被忽略;

1.4.3 如果字符串包含有效的十六进制,则返回等大的十进制数值

1.4.4 如果字符串为空,则返回0

1.4.5 如果字符串中包含除上述格式外的字符,则返回NaN

1.5 param是对象,则调用valueOf()方法,依照前面的规则转换返回字符串值,若返回NaN,则调用toString()方法,再次依照前面的规则转换返回字符串值。

1.6 示例:

<span style="font-family:Microsoft YaHei;font-size:18px;">var num1 = Number("hello"); //NaN 
var num2 = Number(""); //0 
var num3 = Number("00022"); //22 
var num4 = Number(true); //1</span>

二、parseInt(param):把字符串转换成整数,param是字符串类型。

parseInt()忽略字符串前面的空格,直到找到第一个非空格字符S;若S不是数字或者负号,则返回NaN(即parseInt()对空字符返回NaN,注意Number()对空返回0),若S是数字,parseInt()会继续解析下一个字符,直到解析完所有字符或者遇到了一个非数字字符。parseInt()支持对八进制、十六进制的解析

<span style="font-family:Microsoft YaHei;font-size:18px;">var num1 = parseInt("1234blue"); //1234 
var num2 = parseInt(""); //NaN 
var num3 = parseInt("22.5"); //22 
var num4 = parseInt("070"); //八进制,转换为十进制的56</span>

三、parseIFloat(param):把字符串转换成浮点数,param是字符串类型。

与parseInt类似,parseFloat()从第一个字符开始解析,直到解析完所有字符或者遇到了一个非浮点数字符。第一个小数点有效,但是第二个则无效,且该函数只能解析十进制数,因为它始终会忽略前导0.

<span style="font-family:Microsoft YaHei;font-size:18px;">var num1 = parseFloat("1234blue"); // 1234 
var num2 = parseFloat("0xf6"); // 0 
var num3 = parseFloat("22.5"); // 22.5 
var num4 = parseFloat("22.5.4"); //22.5 
var num5 = parseFloat("3.125e7"); // 31250000</span>
Javascript 相关文章推荐
jQuery UI AutoComplete 使用说明
Jun 20 Javascript
javascript 获取网页标题代码实例
Jan 22 Javascript
js点击返回跳转到指定页面实现过程
Aug 20 Javascript
JQuery的attr 与 val区别
Jun 12 Javascript
jQuery表单事件实例代码分享
Aug 18 Javascript
jQuery返回定位插件详解
May 15 jQuery
js图片放大镜实例讲解(必看篇)
Jul 17 Javascript
Vue自定义指令详解
Jul 28 Javascript
原生js实现移动端触摸轮播的示例代码
Dec 22 Javascript
jQuery实现基本淡入淡出效果的方法详解
Sep 05 jQuery
Postman的下载及安装教程详解
Oct 16 Javascript
快速搭建Node.js(Express)用户注册、登录以及授权的方法
May 09 Javascript
new Date()问题在ie8下面的处理方法
Jul 31 #Javascript
JS数组的遍历方式for循环与for...in
Jul 31 #Javascript
js中回调函数的学习笔记
Jul 31 #Javascript
基于socket.io和node.js搭建即时通信系统
Jul 30 #Javascript
基于Jquery+Ajax+Json实现分页显示附效果图
Jul 30 #Javascript
JQuery实现表格动态增加行并对新行添加事件
Jul 30 #Javascript
jQuery修改CSS伪元素属性的方法
Jul 30 #Javascript
You might like
实用函数4
2007/11/08 PHP
php 获取完整url地址
2008/12/20 PHP
javascript,php获取函数参数对象的代码
2011/02/03 PHP
非常好用的Zend Framework分页类
2014/06/25 PHP
Yii2简单实现给表单添加验证码的方法
2016/07/18 PHP
DHTML Slide Show script图片轮换
2008/03/03 Javascript
javascript 获取元素位置的快速方法 getBoundingClientRect()
2009/11/26 Javascript
新手常遇到的一些jquery问题整理
2010/08/16 Javascript
jQuery使用数组编写图片无缝向左滚动
2012/12/11 Javascript
Javasipt:操作radio标签详解
2013/12/30 Javascript
鼠标经过tr时,改变tr当前背景颜色
2014/01/13 Javascript
教你如何使用node.js制作代理服务器
2014/11/26 Javascript
node.js中的socket.io的广播消息
2014/12/15 Javascript
使用Node.js配合Nginx实现高负载网络
2015/06/28 Javascript
JavaScript取得键盘按下方向键是哪个的方法
2015/08/04 Javascript
js获取新浪天气接口的实现代码
2016/06/06 Javascript
javascript运算符——逻辑运算符全面解析
2016/06/27 Javascript
js实现无缝滚动图(可控制当前滚动的方向)
2017/02/22 Javascript
详解webpack 入门总结和实践(按需异步加载,css单独打包,生成多个入口文件)
2017/06/20 Javascript
微信小程序日历弹窗选择器代码实例
2019/05/09 Javascript
Vue将props值实时传递 并可修改的操作
2020/08/09 Javascript
python中pylint使用方法(pylint代码检查)
2018/04/06 Python
Python图像处理之gif动态图的解析与合成操作详解
2018/12/30 Python
Python3实现zip分卷压缩过程解析
2019/10/09 Python
Python3之外部文件调用Django程序操作model等文件实现方式
2020/04/07 Python
Python爬取某平台短视频的方法
2021/02/08 Python
HTML5+Canvas+CSS3实现齐天大圣孙悟空腾云驾雾效果
2016/04/26 HTML / CSS
Html5移动端适配IphoneX等机型的方法
2019/06/25 HTML / CSS
中国综合网上购物商城:苏宁易购
2016/08/09 全球购物
货物运输服务质量承诺书
2014/05/29 职场文书
企业宣传工作方案
2014/06/02 职场文书
写给老婆的保证书
2015/02/27 职场文书
未中标通知书
2015/04/17 职场文书
2015秋季运动会通讯稿
2015/07/18 职场文书
python分分钟绘制精美地图海报
2022/02/15 Python
Python加密与解密模块hashlib与hmac
2022/06/05 Python