在前端开发的过程中,需要用到很多关于数值转换的函数,来将得到的字符串或者数值进行处理。如将一个浮点数转换为整数;将一个整数转换为浮点数;将一段字符串转换为数值;将一个浮点数转换为小于它的最小整数或者保留几个小数等。
参考网上的一些资料,也结合自己平时的开发,粗略介绍一下一些常用的数值转换函数。
首先对所要讲的数值转换函数做一个列表:Number(),parseInt(),parseFloat(),Math.ceil(),Math.floor(),Math.round(),toFixed()等。
下面就逐一介绍各个函数的用法:
Number()函数:
用new Number(num);创建一个Number对象,传入的num参数可以是一个Date对象、Boolean值、数字值或者是字符串等等。
当传入的参数是Date对象时,将返回从1970年1月1日至今的毫秒数;
当传入一个Boolean值true或false时,将返回一个数字0或1;
当传入一个数值时,返回的也将是该数值;
当传入null值时,返回的将是0;
当传入undefined时,返回的将是NaN;
当传入一个字符串时:1.字符串只包含数字(包括八进制格式0,十六进制格式0x),返回的将是一个数值;2.如果传入的字符串为空,将返回0;3.如果字符串不全为数字,将返回NaN;
document.write(Number(new Date())+'<br/>');//返回从1970年1月1日至今的毫秒数 document.write(Number(false)+'<br/>');//返回0,如果是true,将返回1 document.write(Number(123)+'<br/>');//返回数值123 document.write(Number(null)+'<br/>');//返回0 document.write(Number(undefined)+'<br/>');//返回NaN document.write(Number('123')+'<br/>');//返回123 document.write(Number(0123)+'<br/>');//返回十进制83 document.write(Number('0x12')+'<br/>');//返回十进制18 document.write(Number('y123')+'<br/>');//返回NaN
parseInt()函数:
parseInt函数将传入的字符串或者数值转换为整数:1.当传入整数时,返回一个整数;2.当传入一个浮点数时,小数点及小数将被去掉,返回一个整数;3.当传入一个字符串时,如果字符串以字符开头,则返回NaN;如果字符串以数值开头,则返回该数值;4.当传入的是八进制或者十六进制数时,返回相应的十进制数。
document.write(parseInt(123)+'<br/>');//返回123 document.write(parseInt(0123)+'<br/>');//这是一个八进制数,返回十进制数83 document.write(parseInt(0x123)+'<br/>');//这是一个十六进制数,返回十进制数291 document.write(parseInt(123.23)+'<br/>');//返回123 document.write(parseInt('y123')+'<br/>');//返回NaN document.write(parseInt('123y')+'<br/>');//返回123 document.write(parseInt('123y123')+'<br/>');//返回123
与Number不同的是,都传入一个字符串时,如果字符串中有字符,并且以数值开头,Number返回NaN,而parseInt返回该数值。
document.write(parseInt('123y')+'<br/>');//返回123 document.write(Number('123y')+'<br/>');//返回NaNparseFloat函数:
parseFloat函数与parseInt函数的用法类似
document.write(parseFloat(123.23)+"<br/>");//返回123.23 document.write(parseFloat(0123)+"<br/>");//返回十进制数83 document.write(parseFloat(0x123)+"<br/>");//返回十进制数291 document.write(parseFloat("y123.23")+"<br/>");//返回NaN document.write(parseFloat("123.23y123")+"<br/>");//返回123.23Math.ceil()函数:
Math.ceil()函数返回大于传入值的最小值。如果传入123.23,则返回124。
Math.floor()函数:
Math.floor()函数返回小于传入值得最大值。如果传入123.23,则返回123。
Math.round()函数:
Math.round()函数返回与传入值最接近的值。如果传入123.23,则返回123;如果传入123.55,则返回124。
toFixed()函数:
toFixed(num)函数给某个数值设置保留几位小数。
var number=123.23; document.write(number.toFixed(1)+"<br/>");//返回123.2 document.write(number.toFixed(3)+"<br/>");//返回123.230以上是对JavaScript数值转换函数的一些简单总结,在以后的工作学习中还将不断完善。
相关推荐
JS中有三种函数可以将非数值转换成数值:Number()、parseInt()和parseFloat()。接下来通过本文详细的给大家介绍JS转换数值函数Number()、parseInt()、parseFloat()的实例代码,感兴趣的朋友一起看看吧
将数据类型转换为数字类型Number()、parseInt()、parseFloat的区别
javascript有两种数据类型的转换方法: (一)将整个值从一种类型转换为另一种数据类型(称作基本数据类型转换) (二)从一个值中提取另一种类型的值,并完成转换工作 基本数据类型转换的三种方法: 1.转换为字符...
js parsefloat parseint JavaScript提供了3个显式的类型转换函数,分别是eval()、parseInt()和parseFloat()。 eval()函数:将字符串表达式转换成数字值。例如,语句total=eval(“432.1*10”)...
学习目标: parseInt()、Number()这两个函数用到最多的地方就是把一个字符串转换成数据类型,那么他们都有哪些区别? 学习内容: parseInt()函数将给定的字符串以指定的基数解析为整数。 parseInt(string,...
基于JavaScript Number类型 Number() 、 parseInt() 和 parseFloat() 的转换规则的思维导图
javascript parseInt与Number函数的区别.docx
用简单的小例子演示了parseInt和parseFloat区别,有需要的朋友可以参考一下
转换函数: js提供了parseInt()和parseFloat()两个转换函数。前者把值转换成整数,后者把值转换成浮点数。只有对String类型调用这些方法,这两个函数才能正确运行;对其他类型返回的都是NaN(Not a Number)。 在判断...
但是parseInt(“08”, 10)是可以返回8的。... 核心函数 实现版本 Navigator 2.0: If the first character of the string specified in parseInt(string) cannot be converted to a number, returns “NaN” on So
JavaScript中,可以通过以下3种方法来将string值转换成number: 1.调用Number()来对string进行值类型转换。 2.parseInt()。 3.parseFloat()。 Number() 使用Number()函数来对string进行强制类型转换是最直接的做法。...
JavaScript数值转换一般有三种方式,Number(param)函数、parseInt(param)、parseIFloat(param),下面为大家详细介绍,需要的朋友可以参考下
javascript parseInt() 函数的进制转换注意细节.docx
详解JS转换数值函数Number()、parseInt()、parseFloat() 在项目开发中我们经常会用到转型方法,尤其是JS这种松散型的语言。其中比较常用的方法就是Number()方法和ParseInt()/ParseFloat()方法了,下面我们分别对这几...
8.JS中的字符型转换成数值型:parseInt(),parseFloat() 9.JS中的数字转换成字符型:(""+变量) 10.JS中的取字符串长度是:(length) 11.JS中的字符与字符相连接使用+号. 12.JS中的比较操作符有:==等于,!=不等于,>,>=, 13....
以下三个函数将非数值转换为数值:Number() 、parseInt()和 parseFloat() Number()的转换规则 1.Boolean值 true会被转换为1 false会被转换为0 var correct = true Number(correct) 1 var error = false Number...