IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> JavaScript知识库 -> 【JS】JavaScript时间与时间戳相互转换 | 时间yyyy-MM-dd HH:mm:ss转为时间戳,时间戳转换为时间yyyy-MM-dd HH:mm:ss -> 正文阅读

[JavaScript知识库]【JS】JavaScript时间与时间戳相互转换 | 时间yyyy-MM-dd HH:mm:ss转为时间戳,时间戳转换为时间yyyy-MM-dd HH:mm:ss

1.2 时间 (JS常用时间类型)

1.2.1 GMT-格林尼治标准时

1.2.2 UTC- 协调世界时

1.2.3 中国标准时间

JS中new date()直接输出便是以下格式:
Thu Feb 28 2019 17:11:43 GMT+0800(中国标准时间)
JS默认中国标准时间是 GMT时间.由于我们国家采用的是东八区时间,因此是GMT +0800

1.2.4 ISO8601标准时间格式

例如2019-02-28T09:51:45.540Z,其中T表示合并,Z表示UTC时间

1.2.5 时间戳(timestamp)

时间戳是指格林威治时间1970年01月01日00时00分00秒(北京时间1970年01月01日08时00分00秒)起至现在的总秒数
java的date默认精度是毫秒,也就是说生成的时间戳就是13位的,而像c++或者php生成的时间戳默认就是10位的,因为其精度是秒。

  • 问题1:为什么会生成13位的时间戳,13位的时间戳和10时间戳分别是怎么来的
    date默认精度是毫秒,也就是说生成的时间戳就是13位的,有的时间戳默认就是10位的,因为其精度是秒。
  • 问题2:13位时间戳如何转换成10位时间戳
    第一种:通过substring方法,将13位的时间戳最后三位数字截取
    第二种:将13位时间戳除以1000取整。
北京时间:2021-11-18 22:14:24
时间戳:1637244864707 (毫秒) Math.round(new Date())
时间戳:1637244864 (秒)      Math.round(new Date() / 1000)

1. 时间转换为时间戳

// 时间戳:1637244864707
/* 时间戳转换为时间 */
  timestampToTime(timestamp) {
    timestamp = timestamp ? timestamp : null;
    let date = new Date(timestamp);//时间戳为10位需*1000,时间戳为13位的话不需乘1000
    let Y = date.getFullYear() + '-';
    let M = (date.getMonth() + 1 < 10 ? '0' + (date.getMonth() + 1) : date.getMonth() + 1) + '-';
    let D = (date.getDate() < 10 ? '0' + date.getDate() : date.getDate()) + ' ';
    let h = (date.getHours() < 10 ? '0' + date.getHours() : date.getHours()) + ':';
    let m = (date.getMinutes() < 10 ? '0' + date.getMinutes() : date.getMinutes()) + ':';
    let s = date.getSeconds() < 10 ? '0' + date.getSeconds() : date.getSeconds();
    return Y + M + D + h + m + s;
  }

2. 时间戳转换为时间

// 北京时间:2021-11-18 22:14:24
/* 时间yyyy-MM-dd HH:mm:ss转为时间戳 */
  timeToTimestamp(time){
    let timestamp = Date.parse(new Date(time).toString());
    //timestamp = timestamp / 1000; //时间戳为13位需除1000,时间戳为13位的话不需除1000
    console.log(time + "的时间戳为:" + timestamp);
    return timestamp;
    //2021-11-18 22:14:24的时间戳为:1637244864707
  }

Date.parse() 分析一个包含日期的字符串,函数的返回值为Number类型,返回该字符串所表示的日期与 1970 年 1 月 1 日午夜之间相差的毫秒数。

3. 时间yyyy-MM-dd HH:mm:ss的含义

字段说明
yyyy或YYYY年:注意这个大小写是不同的!!!y 是Year, Y 表示的是Week year。 经过试验,得出的结果如下:Week year 意思是当天所在的周属于的年份,一周从周日开始,周六结束,只要本周跨年,那么这周就算入下一年。
MM月:M大写是为了区分“月”与“分”
dd日:必须小写,大写有时会出现本文上面出现的诡异bug
HH或hh或H时:大小写不同!!!小写的h是12小时制,大写的H是24小时制。HH和H区别在于是否有前导0
mm或者m分:mm与m的区别为是否有前导零
ss或者s秒:ss和s的区别为是否有前导零

”前导0”:比如凌晨1点2分,HH:mm显示为01:02,H:m显示为1:2

时间戳在线转换
JavaScript Date.parse()详解.

  JavaScript知识库 最新文章
ES6的相关知识点
react 函数式组件 & react其他一些总结
Vue基础超详细
前端JS也可以连点成线(Vue中运用 AntVG6)
Vue事件处理的基本使用
Vue后台项目的记录 (一)
前后端分离vue跨域,devServer配置proxy代理
TypeScript
初识vuex
vue项目安装包指令收集
上一篇文章      下一篇文章      查看所有文章
加:2021-11-19 17:32:40  更:2021-11-19 17:33:59 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年5日历 -2024/5/20 21:41:56-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码