javascript(七)数字函数

数字函数

1、parseInt (“字符串”):将字符串转换为整型数字

var str = "-632147";
var num = 100;
var t = parseInt(str);
var type = typeof(t);
document.write(type);

2、parseFloat(“字符串”):将字符串转换为浮点型数字

var str = "0.356";
var t = parseFloat(str);
var type = typeof(t);
document.write(type);

3、Math.max(x…):max(x,…) 方法可返回两个指定的数中带有较大的值的那个数。

var max1 = Math.max(7,20);
var max2 = Math.max(7,20,32,78.95);
var max3 = Math.max(7,20,"99",78.95);
var max4 = Math.max();
document.write(max4);

注意:
参数中最大的值。如果没有参数,则返回 -Infinity。如果有某个参数为 NaN,或是不能转换成数字的非数字值,则返回 NaN。
4、Math.min(x…):min(x,….) 方法可返回指定的数字中带有最低值的数字。
x:0 或多个值。
注意:
参数中最小的值。如果没有参数,则返回 Infinity。如果有某个参数为 NaN,或是不能转换成数字的非数字值,则返回 NaN。

var min1 = Math.min(7,20); 7
var min2 = Math.min(7,20,30,78.95); 7
var min3 = Math.min(7,20,"99",78.95); 7
var min4 = Math.min(); Infinity
var min5 = Math.min(1,"中国"); NaN

5、isNaN():用于检查其参数是否是非数字

document.write(isNaN(123));
document.write(isNaN(-1.23));
document.write(isNaN(5*2));
document.write(isNaN(0));
document.write(isNaN(''));
document.write(isNaN("Hello"));
document.write(isNaN("2005/12/12"));
document.write(Math.min('',-1));
document.write(typeof(''));

6、数字.toFixed(num): toFixed() 方法可把 Number 四舍五入为指定小数位数的数字。
num:必需。规定小数的位数,是 0 ~ 20 之间的值,包括 0 和 20,有些实现可以支持更大的数值范围。如果省略了该参数,将用 0 代替。

var num = 50.784456;
var a = num.toFixed();
var b = num.toFixed(2);
document.write(a);

7、Math.ceil():上舍入
ceil() 方法执行的是向上取整计算,它返回的是大于或等于函数参数,并且与之最接近的整数。
返回值:大于等于 x,并且与它最接近的整数。

var a = document.write(Math.ceil(1));
var b = document.write(Math.ceil(1.1));
var c = document.write(Math.ceil(-1));
var d = document.write(Math.ceil(-1.1));
var e = document.write(Math.ceil(5.59));
var f = document.write(Math.ceil(-5.59));
var g = document.write(Math.ceil(0));
var h = document.write(Math.ceil(''));

8、Math.floor(x):下舍入
x:必需。任意数值或表达式。
返回值:小于等于 x,且与 x 最接近的整数。
说明:floor() 方法执行的是向下取整计算,它返回的是小于或等于函数参数,并且与之最接近的整数。

var a = document.write(Math.floor(1));
var b = document.write(Math.floor(1.1));
var c = document.write(Math.floor(-1));
var d = document.write(Math.floor(-1.1));
var e = document.write(Math.floor(5.59));
var f = document.write(Math.floor(-5.59));
var g = document.write(Math.floor(0));
var h = document.write(Math.floor(''));
var i = document.write(Math.floor(5.2*3.8));

9、Math.round():四舍五入
方法可把一个数字舍入为最接近的整数。
返回值:与 x 最接近的整数。

document.write(Math.round(0.60) + "<br />");
document.write(Math.round(0.50) + "<br />");
document.write(Math.round(0.49) + "<br />");
document.write(Math.round(-4.40) + "<br />");
document.write(Math.round(-4.60) + "<br>");
document.write(Math.round(-4.358) + "<br>");

Math.random()生成指定范围数值的随机数

Math.random函数就不像php的rand函数一样可以生成指定范围的数据,Math.random只是生成了一个伪随机数,之后还要经过我们处理才行。
1、Math.random():random() 方法可返回介于 0 ~ 1 之间的一个随机数。
返回值:0.0 ~ 1.0 之间的一个伪随机数。
例1:取得介于 0 到 1 之间的一个随机数:

document.write(Math.random());

2、知道Math.random()方法的基本用法,我们可以利用parseInt()、Math.floor() 或者 Math.ceil()进行四舍五入处理。
直接使用Math.random()方法,生成的是一个小于1的数。
那么:Math.random()*5将会得到结果是一个小于5的随机数,我们希望得到0~5之间的整数,所以我们需要对得到的结果四舍五入处理一下。
如下:

var randomNum = Math.random()*5;
document.write(randomNum);
document.write(parseInt(randomNum,10));
document.write(Math.floor(randomNum));
document.write(Math.ceil(randomNum));

通过上述代码我们可以看到:
1、parseInt()和Math.floor()的效果是一样的,都是向下取整数部分。
2、所以parseInt(Math.random()*5)和Math.floor(Math.random()*5)都是生成的0-4之间的随机数。
3、Math.ceil(Math.random()*5)则是生成的1-5之间的随机数。
3、生成指定范围数值随机数
1、生成1到任意值的随机数:
公式:
max:期望的最大值

var max = 10;
document.write(parseInt(Math.random()*max)+1);
document.write(Math.floor(Math.random()*max)+1);
document.write(Math.ceil(Math.random()*max));

2、生成0到任意值的随机数:
公式:
max:期望的最大值

var max = 10;
document.write(parseInt(Math.random()*(max+1)));
document.write(Math.floor(Math.random()*(max+1)));

3、生成任意值到任意值的随机数:
公式:
max:期望的最大值
min:期望的最小值
1、parseInt(Math.random()*(max-min+1)+min);
2、Math.floor(Math.random()*(max-min+1)+min);

var max = 10;
var min = 1;
document.write(parseInt(Math.random()*(max-min+1)+min,10));
document.write(Math.floor(Math.random()*(max-min+1)+min));

猜你喜欢

转载自blog.csdn.net/qq_38904347/article/details/82555777