首页 > 技术文章 > 数值型数据与字符串之间的转化以及浮点数取整

wjh0916 2016-08-17 16:29 原文

这两天定的的外卖都很失败,导致上火导致口腔溃疡【大哭】!!!!!还好,天气转凉人还是好的,起码思路是清晰的。

----------------------------------------------------------------------------------------------------------------------

以下是正文

【提纲:

主要说明几个问题

1.数值型数据和字符串之间的相互转换

2.浮点数取整

备注:本质是要清楚获取到的数据的类型

3+3  //result = 6

3+3+”3“ //result = "63"

在表达式中如果有字符串和数值型数据,浏览器就会自动把数值型数据转换为字符型。在实际使用过程中,如果想得到是数值型数据,则需要把字符型转换为数值型。

将字符串转换为数字:

parseInt()和parseFloat();

parseInt()函数返回一个整数,即把小数点后边的数省略掉不存在四舍五入;

alert(parseInt(3));

alert(parseInt(3.3));

alert(parseInt(3.9));

这三种结果是一样的。

parseFloat()函数返回的是小数,即是浮点数的本身。

 

把数字转换为字符串:

利用它们混合在一起的优先级,把数字转换为字符串相对容易多了,只需为数字链接一个空字符串即可。

alert(""+2016) //结果 "2016"

alert(""+2016).lenght) //结果是 4

 浮点数取整

数字与字符串的转换是不很简单,对就是很简单。但是在使用过程中有这些可能还不够,因为在我们的样式里单位px只有整数。并且在动画中由于浏览器计算器计算的不精确所以需要对取到的数进行整数化处理。包括上取整,下取整,四舍五入三种形式。

Math.ceil(number);上取整,意思是只要是有小数就进1。

Math.floor(number);下取整,意思是只要是有小数就舍去。

Math.round(number);四舍五入进行取数据的。

alert(Math.ceil(3.1));   //结果是 4

alert(Math.floor(3.9));  //结果是 3

alert(Math.round(3.1));  //结果是 3

alert(Math.round(3.5));  //结果是 4

有时候我们需要混合起来使用,例如先把字符串转换为小数,然后对这个浮点数进行各种取整。

推荐阅读