持续创作,加速成长!这是我参与「掘金日新计划 · 10 月更文挑战」的第23天,点击查看活动详情
Math
Math跟别的对象不一样,Math不是一个构造函数,而属于一种工具类,因此不需要像构造函数一样创建对象,Math内封装了数学运算方面的属性和方法。
- Math.PI:圆周率。
- Math.ceil:可以用来对一个数进行向上取整,小数位只有值的情况下自动进1。
- Math.floor():该函数可以用来对一个数字进行向下取整,小数的部分会被舍弃掉。
- Math.random():该函数可以用来生成一个0-1之间的任意数。
- max():该函数可以用来获取多个数种最大的值。
- min():该函数可以用来获取多个数种最小的值。
代码示例
Math.sin((30/360)*2*Math.PI) //正弦
0.49999999999999994
Math.cos((60/360)*2*Math.PI) //余弦
0.5000000000000001
Math.tan((45/360)*2*Math.PI) //正弦
0.9999999999999999
Math.asin(0.49999999999999994) //反正弦
0.5235987755982988
Math.acos(0.5000000000000001) //反余弦
1.0471975511965976
Math.atan(0.9999999999999999) //反正切
0.7853981633974483
包装类
Js里面又三种包装类,利用这三种包装类可以将基本数据类型的数据转化成对象:
- String():String()可以将基本数据类型的数据字符串转换称为String类型对象。
- Number():Number()可以将基本数据类型的数字转化成为Number类型对象。
- Boolean():Boolean()可以将基本数据类型的boolean类型值转换成为Boolean类型的对象。
特点
- 方法和属性的值可以赋值给对象,但是基本数据类型不可以。
- 当调用一些基本数据类型的方法和值的时候,浏览器会先通过包装类将其转换成为对象,然后继续调用这个对象的属性和方法,最后,在调用完之后将得到的内容转换成为基本数据类型。
代码示例
<script>
var a = "abc"
var b = a.substring(2)
console.log(b) //abc,还是字符串
console.log(b)
1.var s1 = new String("abc")
2.var b = s1.substring(2)
3.s1 = null ,并销毁当前实例
</script>