组团学

ECMAScript内置对象-math和date

阅读 (394)

一、Math

//四舍五入 console.log(Math.round(3.6)); //向上取整 console.log(Math.ceil(3.1)); //向下取整 console.log(Math.floor(3.1)); //取最大值 console.log(Math.max(1,2,3,4,5)); //取最小值 console.log(Math.min(1,2,3,4,5)); //绝对值 console.log(Math.abs(-3.4)); //求x的y次方(x = 2, y = 3) console.log(Math.pow(2,3)); //开平方 console.log(Math.sqrt(25)); //随机输出x~y之间的一个整数(包含x和y) console.log(parseInt(Math.random() * (6 - 2 + 1) + 2));

二、Date

1、了解时间

  • 格林尼治时间(GTM)

    是英国郊区皇家格林尼治天文台的时间,因为地球自转的原因,不同经度上的时间是不相同的,格林尼治天文台是经度为0的地方。世界上发生的重大时间都是以格林尼治时间时间为标准的

  • 世界协调时间(UTC)

    世界时间,1970年1月1日0点

2、创建Date对象

ECMAScript中的Date类型是在早期Java中的java.util.Date类的基础上构建的。为此Date类型使用自UTC1970年1月1日午夜(零时)开始经过的毫秒数保存时间的。该Date类型保存的日期能够精确到1970年1月1日之前和之后的285616年

  • 直接用Date()函数

    作用:返回当前时间

    注意:不论Date()是否带参数,返回的都是当前时间

    var date1 = Date("2010-09-18"); console.log(typeof date1);//String类型 console.log(date1);
  • 构造函数法–不传参数

    返回当前时间

    var date2 = new Date(); console.log(typeof date2);//Object类型 console.log(date2);
  • 构造函数法–参数是一个表示时间的字符串

    展现格式:month day, year hours:minutes:seconds

    ​ December 24, 2008 12:04:13

    注意:如果省略了小时、分钟、秒数,这些会被设置为0

    var date3 = new Date("2016/09/08"); console.log(date3); var date4 = new Date("2016-09-08"); console.log(date4); var date5 = new Date("2016-9-8"); console.log(date5);
  • 构造函数法–参数是(年,月,日,时,分,秒,毫秒)

    注意:年和月必须写,且月从0开始,日期从1开始

    var date6 = new Date(2010,09,9,10,10,10,1000); console.log(date6);
  • 构造函数法–参数是毫秒数

    返回中国标准时间

    var date7 = new Date(1000); console.log(date7);

3、Date对象间的运算

var date1 = new Date("2016-10-10 10:10:10"); var date2 = new Date("2016-10-10 10:10:12"); //两个日期对象之间相差的毫秒数 console.log(date2 - date1); //返回两个日期字符串拼接后的字符串 console.log(date2 + date1); console.log(typeof (date2 + date1));

截屏2020-02-1718.58.38

4、Date对象中的常用功能(方法)

var date = new Date(); //获取年份 console.log(date.getFullYear()); //获取月份,注意0表示1月,依次类推 console.log(date.getMonth()); //获取日期 console.log(date.getDate()); //获取星期 console.log(date.getDay()); //获取小时 console.log(date.getHours()); //获取分钟 console.log(date.getMinutes()); //获取秒数 console.log(date.getSeconds()); //获取毫秒数 console.log(date.getMilliseconds()); //获取日期对象所表示的日期距离1970-01-01的毫秒数 console.log(date.getTime()); //设置年份 date.setFullYear(2015); //设置月份 //注意:传入的月份大于11,则年份增加 date.setMonth(8); //设置日期 //注意:如果传入的日期超过了该月应有的天数则会增加月份 date.setDate(29); //注意:星期一般不用设置 //设置小时 //注意:如果传入的值超过23则增加日期 date.setHours(13); //设置分钟 //注意:如果传入的值超过了59则增加小时数 date.setMinutes(56); //设置秒数 //注意:传入的值超过59会增加分钟数 date.setSeconds(10); //设置毫秒数 //注意:传入的值超过999会增加秒数 date.setMilliseconds(888); //设置距离1970-01-01的毫秒数 date.setTime(1308484904898); console.log(date); //转换成字符串 //包含年月日时分秒 console.log(date.toLocaleString()); //包含年月日 console.log(date.toLocaleDateString()); //包含时分秒 console.log(date.toLocaleTimeString()); //Date.parse(dateString) //参数:日期字符串 格式:2016-05-08  2015/05/08 12:00:00 //返回该日期距离1970年1月1日0点的毫秒数 console.log(Date.parse("2016-10-10"));
需要 登录 才可以提问哦