html时间格式不对 求大神指导

html-css015

html时间格式不对 求大神指导,第1张

HTML与时间格式没有直接关系,如果你是通过ASP, PHP等输出的时间,那么可能和你输出格式有关,也可能和你服务器的默认日期格式有关,比如Windows Server 2008以前,默认的日期分隔符是-,而2008以后则默认使用/

可以在html页面内使用JavaScript语句来获取当前日期。最简单的方法是使用{strTime = new Date()}来获取当前日期。

PS:上述语句虽然简单,但是有兼容性问题。相对复杂,但是兼容性好的方法是使用getFullYear、getMonth、getDay语句获取时间。

使用{strTime = new Date()}获取当前日期:

<script langauge='javascript'>

function clock()

{

strTime = new Date()

}

</script>

使用getFullYear、getMonth、getDay语句获取当前日期:

js中传入指定日期转换为时间戳,可以使用原生javascript的Date对象进行格式化操作或第三方js库如moment.js进行格式化输出。以下是这2种方法的具体实现:

1、使用原生javascript的Date对象,进行格式化

(1)将日期字符串转换为Date类型的对象。

let d = new Date('2018-01-01')

(2)转换为时间戳。

let t = d.getTime(d) // 方法1

let t = d.valueOf(d) // 方法2

let t = d.parse(d) // 方法3

2、第三方js库moment.js进行格式化

(1)在html中引入moment.js,添加以下script标签:

<script src="https://cdn.bootcss.com/moment.js/2.20.1/moment.js"></script>

(2)将日期转换为时间戳

参数格式为:YYYY-MM-DD HH:mm:ss 或 YYYY-MM-DD

moment('2018-01-01').valueOf()

扩展资料:

1、js将当前日期转换为时间戳

let timeStamp = new Date().getTime()

2、js将时间戳转换为日期

let d = new Date(timestamp * 1000)// 时间戳为10位需*1000,时间戳为13位的话不需乘1000

let yyyy = d.getFullYear() + '-'

let MM = (d.getMonth()+1 <10 ? '0'+(d.getMonth()+1) : d.getMonth()+1) + '-'

let dd = d.getDate() + ' '

let HH = d.getHours() + ':'

let mm = d.getMinutes() + ':'

let ss = d.getSeconds()

return yyyy + MM + dd + HH + mm + ss