JavaScript系列教程(十):Math和Date

By admin in 天文台 on 2018年10月13日

一、Math对象

Math对象被查封装了有些数学函数,方便我们开运算使用。

这边大概介绍几种常用的数学函数。
1、四放弃五适合

console.log(Math.round(4.5));//5
console.log(Math.round(4.2));//4

2、向上取整

console.log(Math.ceil(1.2));//2
console.log(Math.ceil(-1.2));//-1

3、向下取整

console.log(Math.ceil(1.2));//1
console.log(Math.ceil(-1.2));//-2

4、x的y次方

//3的2次方
console.log(Math.pow(3,2));//9
//2的3次方
console.log(Math.pow(2,3));//8

5、开平方

console.log(Math.sqrt(4));//2

6、绝对值

console.log(Math.abs(-1));//1

6、比较返回较生之一再

console.log(Math.max(4, 5)));//5

7、比较返回较小之再三

console.log(Math.min(4, 5)));//4

8、0-1中间的轻易数

console.log(Math.random());
//随机0-10之间的数
console.log(Math.random()*10);

二、Date对象

2.1、了解时

格林尼治时间(GTM),是英国郊区皇家格林尼治天文台的年月,因为地球自转的因,不同经度上的日是无相同之,格林尼治天文台是经度为0的地方。世界上出的重大时间都是盖格林尼治时间时间也业内的。
【例如】北京凡东八区,时间比格林尼治时间抢8独小时。比如格林尼治时间是1日0接触,北京时间就是1日早8点

世界和谐时(UTC),世界时。1970年1月1日0沾。

2.2、Date

ECMAScript中的Date类型是在初期Java中之java.util.Date类的根基及构建的。为者Date类型使用自UTC1970年1月1日子夜(零时)开始通过的毫秒数保存时的。

2.3、Date常用方法

1、创建时间

//1.获取当前时间
//Date()传参是无效的  返回的是当前的时间
var d = Date("2016-5-20");
console.log(d);//Tue Aug 01 2017 17:04:43 GMT+0800 (中国标准时间)

//2.Date的构造函数 获取时间
var d2 = new Date();
console.log(d2);//Tue Aug 01 2017 17:04:43 GMT+0800 (中国标准时间)

//3.传入毫秒数
//假设开发者所在的时区是格林尼治时区  
//电脑上东八区 -- 时区转换   chrome浏览器  
var d3 = new Date(-24*3600*1000);
console.log(d3);//Wed Dec 31 1969 08:00:00 GMT+0800 (中国标准时间)

//4.传入表示时间的字符串
//月 日,年 时:分:秒
var d4 = new Date("6 22,2016 12:00:00");
console.log(d4);//Wed Jun 22 2016 12:00:00 GMT+0800 (中国标准时间)

//ISO 2016-06-22  假设开发者所在的时区是 0度
//非ISO写法   假设开发者所在的时区就是电脑系统的时区
var d5 = new Date("2016-06-22");
console.log(d5);//Wed Jun 22 2016 08:00:00 GMT+0800 (中国标准时间)

var d6 = new Date("2016/06/22");
console.log(d6);//Wed Jun 22 2016 00:00:00 GMT+0800 (中国标准时间)

//5.传入年月日来创建日期对象
//(年,月[,日,时,分,秒])
//月份计数是从0开始的  0---一月  1--二月
//日期计数是从1开始的
var d7 = new Date(2016,6,12,0,0);
console.log(d7);//Tue Jul 12 2016 00:00:00 GMT+0800 (中国标准时间)

2、获取年、月、日、时、分、秒、星期几

var d2 = new Date(2016,12,8,12,0,0);//年月 日 时 分 秒
//Thu May 05 2016 12:00:00 GMT+0800 (中国标准时间)
console.log(d2);
//getFullYear  年
console.log(d2.getFullYear());//四位数字的年份
//getMonth 月
console.log(d2.getMonth());//某个月份(0 - 11) 12月份是0
//getDate 天
console.log(d2.getDate());//返回一个月中的某一天
//getDay 星期几
console.log(d2.getDay());//返回一周中的某一天(0 - 6) 周日是0
//时 分 秒
console.log(d2.getHours());// 0 - 23
console.log(d2.getMinutes());// 0 - 59
console.log(d2.getSeconds());// 0 59
console.log(d2.getMilliseconds());//毫秒 0 -- 999

2.4、日期处理

1、日期的演算
片单日子对象开展减法运算,返回的就是其间隔的毫秒数;进行加法运算,返回的虽是连连后的简单单字符串。

var d1 = new Date(2016,6,22,15,55,30);
var d2 = new Date(2016,6,22,15,55,59);

//日期对象相减  结果是两个日期之间相差的毫秒数
console.log(d2-d1);//29000

//日期对象相加 结果是 将两个日期对象先转换成字符串 然后将两个字符串拼接
console.log(d2+d1);
//Fri Jul 22 2016 15:55:59 GMT+0800 (中国标准时间)Fri Jul 22 2016 15:55:30 GMT+0800 (中国标准时间)

2、Date.parse(“2016-05-08”)
参数:表示日期的字符串;格式:2016-05-08  2015/05/08 12:00:00
返回值:返回该日期去1970年1月1日0触及之毫秒数

//1970 1 1  到这个时间的毫秒数
console.log(Date.parse("2016-10-24"));//1477267200000

3、getTime()获取有日期从1970年以来的毫秒数
setTime()修改日期的毫秒数,对应之日子天文台时也会见修改

var d = new Date();
//获取毫秒数
console.log(d.getTime());//1501579151805

//设置毫秒数
d.setTime(1000);
console.log(d);//Thu Jan 01 1970 08:00:01 GMT+0800 (中国标准时间)

2.5、封装函数,将时刻改成为如下格式:2016年07月22日 星期五 15:55:30

function getDateString(d){
        var str = d.getFullYear()+"年"
                  +twoNumber(d.getMonth()+1)+"月"
                  +twoNumber( d.getDate() )+"日 "
                  +getWeek( d.getDay() )+" "
                  +twoNumber( d.getHours() )+":"
                  +twoNumber( d.getMinutes() )+":"
                   +twoNumber( d.getSeconds() );
        return str;
}
//不足两位 高位补0
function twoNumber(num){    
    return num<10?"0"+num:num;
}
function getWeek(num){
    switch(num){
        case 0:
            return "星期日";
        case 1:
            return "星期一";
        case 2:
            return "星期二";
        case 3:
            return "星期三";
        case 4:
            return "星期四";
        case 5:
            return "星期五";
        case 6:
            return "星期六";   
            }
}
//使用封装好的函数
var d = new Date(2016,6,22,15,55,30);
console.log(getDateString(d));//2016年07月22日 星期五 15:55:30

发表评论

电子邮件地址不会被公开。 必填项已用*标注

网站地图xml地图
Copyright @ 2010-2019 亚洲必赢手机官网 版权所有