Es6 复阅(5)(部分是非es6的) --数值的扩展 (方法)

1.Math.trunc()
用法:去除一个数的小数部分,返回整数部分
模拟方法:

	Math.trunc = Math.trunc || function (data) {
		return data > 0 ? Math.floor(data) : Math.ceil(data);
	}

例子:

	console.log(Math.trunc(3.333333));//3
	console.log(Math.trunc());//NaN
	console.log(Math.trunc(''));//0
	console.log(Math.trunc(null));//0
	console.log(Math.trunc(undefined));//NaN
	console.log(Math.trunc('哈哈哈'));//NaN

2.Math.sign()
用法:检验一个数是整数,负数还是0
例子:

	console.log(Math.sign(2));//1
	console.log(Math.sign(-2));//-1
	console.log(Math.sign(-0));//-0
	console.log(Math.sign(0));//0
	console.log(Math.sign('哈哈哈哈'));//NaN
	console.log(Math.sign(NaN));//NaN
	console.log(Math.sign(''));//0
	console.log(Math.sign(undefined));//NaN
	console.log(Math.sign(null));//0

3.Math.cbrt()
用法:计算一个数的立方根
模拟方法:

	Math.cbrt = Math.cbrt || function (data){
	    var r = Math.pow(Math.abs(data),1/3);
	    return x<0 ? -r : r;
	}

按照上面的模拟方法:Math.pow(Math.abs(data),1/3),平方根,立方根,都可以用这个方法
例子:

	console.log(Math.cbrt(8));//2
	console.log(Math.cbrt(-8));//-2
	console.log(Math.cbrt());//NaN
	console.log(Math.cbrt(''));//0
	console.log(Math.cbrt(null));//0
	console.log(Math.cbrt(undefined));//NaN
	console.log(Math.cbrt(NaN));//NaN
	console.log(Math.cbrt('hahah'));//NaN

4.Math.hypot()
用法:返回所有参数平方和的平方
例子:

	console.log(Math.hypot(3,4));//5

看起来有点勾股定理的意思,有意思
:如果参数不是数值,Math.hypot方法会将其转为数值。只要有一个参数无法转为数值,就会返回 NaN

	console.log(Math.hypot(1,2,''));//2.23606797749979
	console.log(Math.hypot(2,3,'hahha'))//NaN
发布了50 篇原创文章 · 获赞 4 · 访问量 1262

猜你喜欢

转载自blog.csdn.net/weixin_43910427/article/details/105276835