js时间格式的转换方法有哪些

发布时间:2023-04-28 15:20:41 作者:iii
来源:亿速云 阅读:140

这篇“js时间格式的转换方法有哪些”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“js时间格式的转换方法有哪些”文章吧。

js 各种时间格式的转换

时间格式示例
中国标准时间Fri Mar 18 2022 14:24:45 GMT+0800(中国标准时间)
部分可读字符串Fri Mar 18 2022
格林威治时间Fri,18 Mar 2022 06:24:45 GMT
现在用的时间标准UTCFri Mar 18 2022 06:24:45 GMT
IOS标准时间(JSON时间格式)2022-03-18T06:24:45.061Z
常见时间格式2022-03-18 14:24:45

注意:UTC时间不等于GMT时间

GMT:Greenwich Mean Time
格林尼治标准时间。这是以英国格林尼治天文台观测结果得出的时间,这是英国格林尼治当地时间,这个地方的当地时间过去被当成世界标准的时间。

UT:Universal Time 世界时。根据原子钟计算出来的时间。

UTC:Coordinated Universal Time
协调世界时。因为地球自转越来越慢,每年都会比前一年多出零点几秒,每隔几年协调世界时组织都会给世界时+1秒,让基于原子钟的世界时和基于天文学(人类感知)的格林尼治标准时间相差不至于太大。并将得到的时间称为UTC,这是现在使用的世界标准时间。

协调世界时不与任何地区位置相关,也不代表此刻某地的时间,所以在说明某地时间时要加上时区

也就是说GMT并不等于UTC

获取时间

var newDate = new Date();
			
			console.log('newDate',newDate)
			
			//Fri Mar 18 2022 14:24:45 GMT+0800(中国标准时间)
			
			1.把 Date 对象的日期部分转换为可读字符串:
			
			console.log('toDateString',newDate.toDateString());
			
			// Fri Mar 18 2022
			
			2.根据格林威治时间 (GMT) 把 Date 对象转换为字符串(需注意的是)
			
			console.log('toGMTString',newDate.toGMTString());
			
			// Fri,18 Mar 2022 06:24:45 GMT
			
			不建议使用,因为此日期会在转换为字符串之前由本地时区转换为 GMT 时区。
			
			例如:传入具体时间
			
			var localDate=new Date('July 21, 1983 01:15:00')
			
			console.log(localDate.toGMTString())
			
			// Wed, 20 Jul 1983 17:15:00 GMT
			
			输出的时间会和传入的时间有时差
			
			3.使用 ISO 标准返回 Date 对象的字符串格式:
			
			console.log('toISOString',newDate.toISOString());
			
			// 2022-03-18T06:24:45.061Z
			
			
			4.将 Date 对象转换为字符串,并格式化为 JSON 数据格式。
			
			console.log('toJSON',newDate.toJSON());
			
			// 2022-03-18T06:24:45.061Z
			
			5.根据本地时间把 Date 对象的日期部分转换为字符串:
			
			console.log('toLocaleDateString',newDate.toLocaleDateString());
			
			// 2022/3/18
			
			6.根据本地时间把 Date 对象转换为字符串:
			
			console.log('toLocaleString',newDate.toLocaleString());
			
			// 2022/3/18 下午2:24:45
			
			7.根据本地时间把 Date 对象的时间部分转换为字符串:
			
			console.log('toLocaleTimeString',newDate.toLocaleTimeString());
			
			// 下午2:24:45
			
			8. Date 对象转换为字符串。
			
			console.log('toString',newDate.toString());
			
			// Fri Mar 18 2022 14:24:45 GMT+0800(中国标准时间)
			
			9.把 Date 对象的时间部分转换为字符串:
			
			console.log('toTimeString',newDate.toTimeString());
			
			// 14:24:45 GMT+0800(中国标准时间)
			
			10.根据世界时 (UTC) 把 Date 对象转换为字符串:
			
			console.log('toUTCString',newDate.toUTCString());
			
			//  Fri Mar 18 2022 06:24:45 GMT

日期转时间戳

var date = new Date(); // 当前时间
console.log('date',date)

三种方法:
var time1 = date.getTime();
var time2 = date.valueOf();
var time3 = Date.parse(date);

console.log('time1',time1)
console.log('time2',time2)
console.log('time3',time3)

js时间格式的转换方法有哪些

注意:如果是用JSON格式的时间去转换时间戳的话,获取的时间有相差

        var date =new Date('2022-03-16T16:00:00.000Z'); // 当前时间
		console.log('date',date)
		var time1 = date.getTime();
		var time2 = date.valueOf();
		var time3 = Date.parse(date);
		console.log('time1',time1)
		console.log('time2',time2)
		console.log('time3',time3)

js时间格式的转换方法有哪些

时间戳转日期

function add0(m){return m<10?'0'+m:m }
function format(shijianchuo)
{
//shijianchuo是整数,否则要parseInt转换
var time = new Date(shijianchuo); //时间戳为10位需*1000,时间戳为13位的话不需乘1000
var y = time.getFullYear();
var m = time.getMonth()+1;
var d = time.getDate();
var h = time.getHours();
var mm = time.getMinutes();
var s = time.getSeconds();
return y+'-'+add0(m)+'-'+add0(d)+' '+add0(h)+':'+add0(mm)+':'+add0(s);
}

但是如果是&lsquo;2022-03-16T16:00:00.000Z&rsquo;这种时间格式的话,上面那种方式获取的时间有误

可以试试这种方法

  var time = '2022-03-16T16:00:00.000Z'
      time = time.replace(/-/, '年')
      time = time.replace(/-/, '月')
      time = time.replace(/T/, '日')
      let times = time.split('.')
      console.log(times[0])
      //2022年03月16日16:00:00

如果是vue2的项目的话,你可以封装一个过滤器

// 封装项目中需要使用到的过滤器
import moment from 'moment'
// 1.时间日期过滤器
// 参数说明:不管是否传递了参数,都会有一个默认参数,就是管道符前面的数据
// 意味着用户参数从参数列表的第二个开始
export const dateFormat = (data, spe = '-') => {
  return moment(data).format('YYYY-MM-DD HH:mm:ss')
}
引入
import { dateFormat } from '@/utils/myfilters.js'
定义
filters: {
    dateFormat
  },
使用
<div class="time">{{currentUser.date | dateFormat}}</div>

附:如何判断是否为当天时间

if (new Date(str).toDateString() === new Date().toDateString()) {
    //今天
    console.log("当天");
} else if (new Date(str) < new Date()){
    //之前
    console.log(new Date(str).toISOString().slice(0,10));
}

以上就是关于“js时间格式的转换方法有哪些”这篇文章的内容,相信大家都有了一定的了解,希望小编分享的内容对大家有帮助,若想了解更多相关的知识内容,请关注亿速云行业资讯频道。

推荐阅读:
  1. 使用python将时间转换为指定的格式方法
  2. js中时间戳格式化成日期格式的方法有哪些

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

js

上一篇:NumPy矩阵向量线性代数的操作方法有哪些

下一篇:出现module 'queue' has no attribute 'Queue'问题如何解决

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》