1、时间戳和时间对象可以灵活转变:

let  n = new Date()  // 返回的是当前时间对应的国际时间
let nt =n.getTime()
let n2 =new Date(nt)
console.log(n,nt,n2)

输出为当前时间和时间戳:

Date 2018-12-06T06:41:56.217Z

1544078516217

Date 2018-12-06T06:41:56.217Z

2、时间转换的字符串参数格式不同,返回的时间格式有时会不同

// 时分秒如果有参数,返回的是参数中的本地时间对应的国际时间。
let i = new Date('2018-12-06 0:0:0')
let j = new Date('2018/12/06 0:0:0')

输出 :Date 2018-12-05T16:00:00.000Z
   Date 2018-12-05T16:00:00.000Z
// 时分秒如果没有参数, ‘-’ 符号的返回的是国际标准时间0点,‘/’符号返回的是本地时间0点对应的国际时间
let i2 = new Date('2018-12-06')
let j2= new Date('2018/12/06')
console.log(i2,j2) 输出:Date 2018-12-06T00:00:00.000Z

    Date 2018-12-05T16:00:00.000Z

// 时间戳对比确认
console.log(i.getTime(),j.getTime(),i2.getTime(),j2.getTime())
输出:1544025600000 1544025600000 1544054400000 1544025600000 
console.log(j == j2)
输出: false

3、非字符串参数,记得月份是0-11:

let ii = new Date(2018,12,6,0,0,0)
let ii2 = new Date(2018,12,6)
console.log(ii,ii2)

输出的是本地时间0时对应的国际时间:

Date 2019-01-05T16:00:00.000Z
Date 2019-01-05T16:00:00.000Z

4、参数为时间戳,输出的是国际时间

let i1 =new Date('2018-12-06 0:0:0')
let i2 =new Date('2018-12-06 0:0:0').getTime()
let i3 =new Date(i2) console.log(i1,i2,i3)

输出:

Date 2018-12-05T16:00:00.000Z

1544025600000

Date 2018-12-05T16:00:00.000Z
 
 

总结:慎用 2018-12-06 格式的参数,传入Date的参数大都代表本地时间,输出的值都是对应的国际时间

附加控制台返回值图:

友情链接: https://www.cnblogs.com/hjsblogs/p/5842717.html           这个大神说得很具体。

  

  

  

js Date对象要注意的问题(时间转换)的更多相关文章

  1. js Date对象总结

    Date在js中和Array类似,都是拥有自己的特殊方法的特殊对象. 由于平常用到Date着实不多,对它的了解颇浅.上周被问到怎么样获取某年某个月的天数,我当时想了一会儿,回答说有两种,一种自己写判断 ...

  2. js date对象传参获取特定日期的时间戳

    当我们想要通过js获取某一特定时间的时间戳时,会通过给date对象传参再通过getTime函数来获取,传递的参数格式也有不同形式.有些时候,可能会因为自己传入参数的格式不正确而导致date对象inva ...

  3. 回顾JS Date()对象

    突然想写一个日历插件发现Date对象的一些常识快忘光了,复习一下 new Date()返回当前时间 年月日 getFullYear() 返回年份 getMonth() 返回月份(因为从0开始算 所以要 ...

  4. JavaScript中的内置对象-8--4.date对象中-获取,设置日期时间的方法; 获取,设置年月日时分秒及星期的方法;

    学习目标 1.掌握创建日期对象的方法 2.掌握date对象中获取日期时间的方法 3.掌握date对象中设置日期时间的方法 如何创建一个日期对象 语法:new Date(); 功能:创建一个日期时间对象 ...

  5. 扩展JS Date对象时间格式化功能

    在自己JS代码中引入一下代码: Date.prototype.format =function(format) { var o = { "M+" : this.getMonth() ...

  6. JS DATE对象详解

    1.建立时间对象:可获取年,月,日,星期,时,分,秒 var d = new Date(); console.log(d.getFullYear()+'年'+d.getMonth()+'月'+d.ge ...

  7. 通过js date对象获取各种开始结束日期的示例

    有时候做一些任务计划的功能时候,需要提供一个开始时间或者结束时间,比如本周结束,本月结束,今天结束等等,因此,我参考网上的资料把相关的实现为一个项目: gitee: https://gitee.com ...

  8. js Date对象和数字对象

    <script type="text/javascript"> alert(new Date.toLocaleString()); </script> 以本 ...

  9. Safari浏览器中对js Date对象的支持

    看了一下自己上一次写博客还是3月份,那是还没有毕业,实习也没那么多事情,毕业设计也才刚开始做,那时天天晚上都把电脑带回家继续学习,而现在一工作忙为借口已经不怎么进行什么知识总结了,只是在印象笔记里做做 ...

随机推荐

  1. ZooKeeper学习之路 (五)ZooKeeper API的简单使用 增删改查

    zookeeper文件系统的增删改查 public class ZKDemo1 { private static final String CONNECT_STRING = "hadoop1 ...

  2. C++ —— 小操作

    判断一个浮点数是否是整数: #include <iostream> using namespace std; int main() { ); if (l == (int)l) { //.. ...

  3. spring cloud各个模块作用

    Eureka Client:负责将这个服务的信息注册到Eureka Server中.Eureka Server:注册中心,里面有一个注册表,保存了各个服务所在的机器和端口号.ribbon:负载均衡,获 ...

  4. 利用maven开发springMVC项目(三)——数据库配置

    前两节介绍了开发环境的搭建以及框架的配置 现在主要介绍在eclipse中如何将SpringMVC.hibernate.mysql数据库结合起来. 数据库配置 下面,就要通过一个简单的例子,来介绍Spr ...

  5. ASP.NET MVC 自动模型验证

    经常看到这个代码 在controller 中写入验证模型,每个需要验证的action 都写-.. ,就问你烦不烦~ 可以利用 ASP.NET MVC 的 action 拦截机制 自动处理. 1 新建验 ...

  6. --oracle删除数据库表(无主键)中重复的记录

    --oracle删除数据库表(无主键)中重复的记录 1,  CREATE TABLE newtable as SELECT distinct * FROM T_SYSTEM_MENU_PRIV; 2, ...

  7. ie浏览器报 promise 问题

    1.首先安装:babel-polyfill    npm install babel-polyfill --save2.然后引入:babel-polyfill 在build目录下,webpack.ba ...

  8. Java面试题整理2

    多线程部分 并行和并发的区别? 并行指两个或多个事件同一时刻发生:并发指两个或多个事件同一时间间隔发生. 并行是在不同实体上的多个事件,并发是在同一实体上的多个事件. 线程和进程的区别? 进程是程序运 ...

  9. RedirectAttributes 之 IE8请求跳转失败

    1.时间真快,一晃又快冬天了,下了第一场雪.雪花漫漫,堵车悠悠. 2.这次遇到这样一个问题,就是RedirectAttributes传递数据参数,如果参数数据过大,在IE8浏览器时候会跳转不过去.其实 ...

  10. [教学] Delphi IDE 文件搜寻功能

    Delphi IDE 提供了一个方便的文件搜寻功能,操作如下: 点 Search 选单内的 Find in Files... 例如我们想搜寻 JFile 需要引用那一个源码,可输入如下: 输入关键字: ...