JS内置对象 Math 和 Date 的详解


本文摘自PHP中文网,作者Guanhui,侵删。

一、Math对象的方法

1.求最值方法
①min()
语法:Math.min(num1,num2…numN)
功能:求一组数中的最小值。
返回值:Number。

②max()
语法:Math.max(num1,num2…numN)
功能:求一组数中的最大值。
返回值:Number。

1

2

3

4

5

6

7

8

9

10

<script>

    var min=Math.min(5,-4,0,9,108,-55);

    console.log(min);//-55

     

    var min1=Math.min(5,-4,0,9,108,-55,"abc");

    console.log(min1);//NaN

     

    var max=Math.max(88,0,6,85,199);

    console.log(ma);//199

</script>

2.取整方法

①ceil()
语法:Math.ceil(num)
功能:向上取整,即返回大于num的最小整数。
返回值:Number。

②floor
语法:Math.floor(num)
功能:向下取整,返回num的整数部分。
返回值:Number。

③round()
语法:Math.round (num)
功能:将数值四舍五入为最接近的整数。
返回值:Number。

1

2

3

4

5

6

7

8

9

10

11

12

13

var num=Math.ceil(189.99);

console.log(num);//190

var num1=Math.ceil(189.09);

console.log(num1);//190

 

 

var num2=189.09;

var int1=Math.ceil(num2);//190

var int2=Math.floor(num2);//189

 

var int3=Math.round(num2);//189

var num3=189.69;

var int3=Math.round(num3);//190

3.求绝对值
①abs()
语法:Math.abs (num)
功能:返回num的绝对值。
返回值:Number。

1

2

var nums=-55;

console.log(Math.abs(nums));//55

4.生成随机数
①random()
语法:Math.random()
功能:返回大于等于0小于1的一个随机数。
返回值:Number。

说明:
求n到m之间的随机整数的公式:
random=Math.floor(Math.random()*(m-n+1)+n);

1

2

3

4

5

6

7

8

9

10

var random=Math.random();

console.log(random);//每一次刷新都不一样,小于1的随机数:0.458541256325412

 

//生成x~x之间的随机整数

function getRandom(n,m){

    var choise=m-n+1;//随机整数的个数

    return Math.floor(Math.random()*choise+n);

}

var random1=getRandom(2,6);

console.log(random1);//5 3 2...

二、date对象

1.创建日期对象的方法
语法:new Date();
功能:创建一个日期时间对象
返回值:不传参的情况下,返回当前的日期时间对象。

说明:
如果想根据特定的日期和时间创建日期对象,必须传入表示该日期的毫秒数或者是一组用逗号隔开的表示年月日时分秒的参数。

2.获取日期时间的方法
1、getFullYear():返回4位数的年份
2、getMonth():返回日期中的月份,返回值为0-11
3、getDate():返回月份中的天数
4、getDay():返回星期,返回值为0-6
5、getHours():返回小时
6、getMinutes():返回分
7、getSeconds():返回秒
8、getTime():返回表示日期的毫秒数

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

<script>

    //创建一个日期时间对象

    var weeks=["日","一","二","三","四","五","六"],

        today=new Date();

    console.log(today);//Thu Jan 04 2018 15:43:49 GMT+0800 (中国标准时间)

     

    var today=new Date(),

        year=today.getFullYear(),

        month=today.getMonth()+1,

        date=today.getDate(),

        week=today.getDay(),

        hours=today.getHours(),

        minutes=today.getMinutes(),

        seconds=today.getSeconds(),

        times=today.getTime(),

        time=year+'年'+month+'月'+date+'日'+hours+'时'

            +minutes+'分'+seconds+'秒 星期'+weeks[week];

             

    console.log("现在是:"+time); //现在是:2018年1月4日15时51分41秒 星期四

    console.log(times);//从1970年1月1日00:00:00开始到现在时间的毫秒数:1515052409017

</script>

3.设置日期时间的方法
1、setFullYear(year):设置4位数的年份
2、setMonth(mon):设置日期中的月份,从0开始,0表示1月
3、setDate():设置日期
4、setDay():设置星期,从0开始,0表示星期日
5、setHours():设置小时
6、setMinutes():设置分
7、setSeconds():设置秒
8、setTime():以毫秒数设置日期,会改变整个日期

1

2

3

4

5

6

7

8

9

10

//创建一个日期时间对象

var today=new Date();

today.setFullYear(2015);

console.log(today.getFullYear());//2015

 

today.setMonth(8);

console.log(today.getMonth());//8

 

today.setMonth(13);

console.log(today.getMonth());//1

案例:50天之后是星期几

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

<script>

    var today=new Date();

     

    //第一种做法

    //today.setDate(today.getDate()+50);

    //console.log(today.getDay());

    //5

     

    //第二种做法

    var weeks=["日","一","二","三","四","五","六"];

    var year=today.getFullYear();

    var month=today.getMonth();

    var day=today.getDate();

    //创建一个目标日期对象

    var temp = new Date(year,month,day+50);

    console.log("50天后的今天是:"+temp.getFullYear()+'-'+(temp.getMonth()+1)+'-'+temp.getDate()

                                +'-'+'星期'+weeks[temp.getDay()]);

    //50天后的今天是:2018-2-23-星期五

</script>

推荐教程:《JS教程》

以上就是JS内置对象 Math 和 Date 的详解的详细内容,更多文章请关注木庄网络博客

相关阅读 >>

js如何实现滑动门效果

javascript如何获取焦点和失去焦点

js框架与css框架的区别是什么

自学 html5 要多久

js转化为string的三种方法

介绍js 表单提交信息加密

js如何实现日期比较大小

jquery.deferred() 详解

typescript 和 javascript 的区别

js数组如何删除指定元素

更多相关阅读请进入《js》频道 >>




打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...