栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > Web开发 > JavaScript

JavaScript-Java日期格式转换

JavaScript 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

JavaScript-Java日期格式转换

前言

日期如何做比较,这还真让人头疼,如果能转换成数字来做比较那就好了……
很多时候,我们取到前端的日期并不是数据库里存的日期格式,很多情况下都是字符串的形式传过来的,可是数据库内存什么格式的都有,但是我自己的数据库内基本都是存时间戳的,于是就要涉及时间戳的转换问题,首先介绍一下,如何在Java定义时间戳。

Date aimTDate = (new Date());
Timestamp aimTimestamp = new Timestamp(aimTDate.getTime());
return aimTimestamp;

上面的代码,getTime的时候已经将当前时间改为了时间戳,时间戳其实就是一串数字:

时间戳

时间戳记或称为时间标记(英语:Timestamp)是指字符串或编码信息用于辨识记录下来的时间日期。国际标准为ISO 8601。
时间戳记的范例如下:
2016-12-25T00:15:22Z
2005-10-30 10:45 UTC
Sat Jul 23 02:16:57 2005
2016年12月25日 (日) 00:14 (UTC)

格式

Javascript时间戳转换new Date(Timestamp)
然而,这样的时间格式,很难受,于是我们需要转换一下格式问题:

export function getDateFormat(dt) {
  dt.setHours(dt.getHours())
  var now = dt
  var y = now.getFullYear()
  var m = now.getMonth() + 1
  var d = now.getDate()
  return y + '-' + (m < 10 ? '0' + m : m) + '-' + (d < 10 ? '0' + d : d) + ' ' + now.toTimeString().substr(0, 8)
}

除此之外,我们可以通过字符串的拼接或者拆分,来进行格式的转换,这种思想比较有意思,就是假设,传过来的就是字符串,我们来处理字符串就好了。

function eduDatevalidation() {
     var startDateParts = startDate.split('-');
     var endDateParts = endDate.split('-');
     var sDT = new Date(startDateParts[0],startDateParts[1],startDateParts[2]);
     var eDT = new Date(endDateParts[0],endDateParts[1],endDateParts[2]);
 }

其实关于时间戳的变化,大部分都是因为后端和前端,想要的不一样导致的,而我在自己写代码的时候,都是直接存时间戳的,这样,无论你要什么格式,自己去变换就好了,所以数据库里存的就是最全的信息,然后通过展示格式不同,进行不同的截取就好了,我之前还遇到了关于时间的另一个问题,就是

数据库存的时间比现实时间少8小时

其实网上的各种办法都是不太适应我目前的问题的,最主要的原因就是,我的配置问题,改一个字符串就能解决的问题,非要我设置修改数据库的时区,各种改数据库,然而没有任何用处,我来介绍一下我是如何解决的
我的是SpringBoot项目,在property文件设置一下时区就好了

serverTimezone=GMT%2B8
获取方式

前端获取这些内容的时候,有时候可以通过地址栏,这里介绍其中一种方式

获取GET里的值

例如:htttp:localhost:8080/pj?name='王五’
getQueryString(‘name’)=‘王五’

function getQueryString(name) {
	var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)");
	var r = window.location.search.substr(1).match(reg);
	if (r != null) {
		return decodeURIComponent(r[2]);
	}
	return '';
}
总结


前端代码和后端都是紧密联系的,虽然总是转换来转换去,可是作为开发者,我真的是乐此不疲的,就好像那就话一样“子非鱼安知鱼之乐”,确实,如果不是真心觉得敲代码有意思,我还真的不能在没有任何开发任务的时候,自己有想做点什么项目的想法。
上述点有的是为了export到Vue项目里的,所以写法上有点不一样,慢慢的接触的语言多了,其实发现很多时候,语言都是大同小异的,如果不是一通则通,单纯的死记硬背是没有任何理解的,对于更高效更快捷的开发,是没有好处的,还有一点就是学会记笔记,我在项目上都是用word来记笔记的,平时自己写代码用markdown写得多一点,因为感觉上不像是在写文章,更像是在敲代码,作为程序员,多尝试新的事物总是好的,于是我试了一次markdown就开始一直使用markdown了。
时间还真让人头疼呀,在时间戳,在时间的存储上,你遇到过什么问题呢?欢迎来讨论一下吧!

转载请注明:文章转载自 www.mshxw.com
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号