一、 Date对象

Math和Date对象的区别
Math对象和Date对象的区别
Math不是一个构造函数,里面提供的是静态成员
Date是一个构造函数 首先要通过new Date() 来创建日期实例 GMT 格林威治时间 世界时间
GMT+0800 (中国标准时间)
创建Date 实例用来处理日期和时间。 Date对象基于1970年1月1日起的秒数

1. 用法:

1. 空构造函数 获取当前时间对象
var d = new Date();
console.log(d);
2. 构造函数中传入毫秒值
var d = new Date();
console.log(d.valueOf()); 获取毫秒值
var d = new Date(1575364161879);
3. 可以传入日期形式的字符串
var d = new Date('1994-10-16');
console.log(d);
4. 传入数字
5. 获取时间毫秒秒方法
d.getTime();
var num = Date.now();
var num = + new.Date()

2. Date的常用方法

日期格式化方法
toString() 转换成字符串
valueOf() 获取毫秒值 格式化日期的方法 在不同浏览器可能表现不一致, 一般不用
toDateString()
toTimeString()
toLocaleDateString()
toLOcaleTimeString() 获取日期指定部分
getTime() 返回好小和vauleOf() 结果一样
getMilliseconds()
getSeconds() 返回0-59
getMinutes() 返回0~59
getHours() 返回0~23
getDay() 返回星期几 0是周日
getDate() 返回当月的第几天
getMonth() 返回月份 **从0开始
getFullYear() 返回4位的年份 var d = new Date();
console.log(d.getFullYear());
console.log(d.getMonth() + 1);
console.log(d.getDate());
console.log(d.getHours());
console.log(d.getMinutes());
console.log(d.getSeconds());

案例1 格式化日期对象

date instanceof Date 判断date是否是Date类型
console.err() 当发生错误时 可打印自定义日志 function formatDate(date) { if (!(date instanceof Date)) {
console.error('date 不是日期对象');
return;
}
var year = date.getFullYear(),
month = date.getMonth() + 1,
day = date.getDate(),
hour = date.getHours(),
minute = date.getMinutes(),
second = date.getSeconds(); month = month < 10 ? '0' + month : month;
day = day < 10 ? '0' + day : day;
hour = hour < 10 ? '0' + hour : hour;
minute = minute < 10 ? '0' + minute : minute;
second = second < 10 ? '0' + second : second; return year + '-' + month + '-' + day + ' ' + hour + ':' + minute + ':' + second;
}
var d = new Date(2019, 1, 3);
var dateStr = formatDate(d)
console.log(dateStr);

案例2 计算时间差

function getInterval(start, end) {
var interval = end -start;
var day, hour, minute, second;
interval /= 1000;
day = Math.round(interval / 60 / 60 /24);
hour = Math.round(interval /60 /60 % 24);
minute = Math.round(interval / 60 % 60);
second = Math.round(interval % 60);
return {
day: day,
hour: hour,
minute: minute,
second: second,
} }
var d1 = new Date();
var d2 = new Date(2019,12,24);
obj = getInterval(d1, d2);
console.log(obj);

js入门之内置对象Date的更多相关文章

  1. js入门之内置对象Math

    一. 复习数据类型 简单数据类型, 基本数据类型/值类型 Number String Boolean Null Undefined 复杂数据类型 引用类型 Object 数组 数据在内存中是如何存储的 ...

  2. js入门之内置数组对象 Array

    一. 数组 1. 创建数组的两种方式 1. 数组字面量 var array = [] 2. 数组的构造函数创建数组 var array = new Array(); 2. 如何判断一个变量是否是数组 ...

  3. JS入门之ActiveXObject对象(转载)

    JS入门之ActiveXObject对象   此对象提供自动化对象的接口.   function ActiveXObject(ProgID : String [, location : String] ...

  4. js arguments 内置对象

    1.arguments是js的内置对象. 2.在不确定对象是可以用来重载函数. 3.用法如下: function goTo() { var i=arguments.length; alert(i); ...

  5. js单体内置对象

    js单体内置对象:js的内置对象,是ECMAScritp提供的.不依赖于宿主环境的对象,我的理解就是在我们开发之前js里面就已经存在的对象.单体内置对象就是是不需要通过new来实例化的,例如我们的st ...

  6. JS基础-内置对象【字符串+Date+Math】

    JS内置对象[字符串] // charAt() 返回字符 // charCodeAt() 返回字符的unicode编码 var str="hello world"; console ...

  7. js之内置对象

    内置对象(Global和Math):JS程序在执行之前就已经存在,开发人员不必再取实例化的内置对象 下面对Global对象进行介绍一下,Math用的不多就不做介绍了 1.Global对象 Global ...

  8. JS的内置对象以及JQuery中的部分内容

     [js中的数组]              1  数组的概念:可以再内存中连续存储的多个有序元素的结构                元素的顺序:称为下标,通过下标查找对应元素.           ...

  9. js常用内置对象、Dom对象、BOM对象

    11.html元素事件属性中,如onclick="",双引号里可以是方法条用,可以是js代码(无需加<script>标签) 12.JavaScript内置 对象.属性和 ...

随机推荐

  1. django实战总结2

    https://www.jianshu.com/p/9b3bfe934511 https://www.cnblogs.com/1Q84mi/p/xadmin002.html https://blog. ...

  2. 【443】Tweets Analysis Q&A

        [Question 01] When converting Tweets info to csv file, commas in the middle of data (i.e. locati ...

  3. lodop和c-lodop通过打印状态和任务不在队列获取打印成功

    之前的博文有通过判断pirnt的返回值,判断加入队列算打印成功,建议使用这种简单的判断方法.此外还有其他判断方法,例如通过PRINT_STATUS_OK判断,但是这个状态不是所有打印机能支持这种判断成 ...

  4. Python3之内建模块collections

    collections是python内建的一个集合模块,提供了许多有用的集合类. namedtuple 我们知道tuple可以表示不可变集合,例如,一个点的二维坐标可以表示成 >>> ...

  5. Django 操作已经存在的数据库

    反向操作数据库 何为反向操作.即是数据库在项目之前已经存在,不需要新建表,操作已经存在的表 # 进入站点目录下执行 python manage.py inspectdb #可以看到settings中连 ...

  6. SQL优化——select

    MYSQL优化实施方案:https://www.cnblogs.com/clsn/p/8214048.html 对查询时经常用到的字段建立索引,如包含多个也可以构建复合索引,建立索引之后需要注意的一点 ...

  7. ubuntu下安装chrome浏览器和flash插件

    chrome浏览器可在Ubuntu软件中心里搜索并安装 falsh插件首先去官网下载合适的包然后,按照readme安装,执行sudo cp -r usr/* /usr 和sudo cp libflas ...

  8. java当中JDBC当中请给出一个DataSource的单态模式(SingleTon)HelloWorld例子

    [学习笔记] 2.DataSource的单态模式(SingleTon)程序 咱们还接着上面的例子来说.1万个人要看书.千万确保要只建立一个图书馆.要是一不留神,建了两个或三个图书馆,那可就亏大发了.对 ...

  9. PAT甲级满分有感

    时间轴: 2017年,数据结构加入了我的课程清单. 2018年12月,我从网易云课堂下载了数据结构的所有课程视频(学校里没有网,只能离线看),开始一刷.一刷只看了视频,基本没有做题,看到AVL树的时候 ...

  10. vue项目过程的理解: main.js文件理解 router.js文件理解 以及组件 路由 等之间的关系

    https://blog.csdn.net/qq_26229005/article/details/85040393 内容太多了,有空再整理