JS 时间戳问题?

JavaScript010

JS 时间戳问题?,第1张

在js中,可以对两个时间戳进行相减,使用if语句判断结果,从而实现时间戳的比较。具体步骤如下:

1、在test.html文件内,命名为test.html,用于讲解js时间戳怎么比较。

2、在test.html文件内,在js标签内创建一个pan()函数,函数有两个参数,分别st1,st2。

3、在pan()函数内,分别将两个时间使用new Date()转换为时间对象,保存在t1,t2变量中。

4、在pan()函数内,将两个时间对象分别利用getTime()方法转换为时间戳,分别保存在变量tt1,tt2变量中。

5、在pan()函数内,将两个时间戳相减,差值保存在res变量中。

6、在pan()函数内,使用if语句对res进行判断,如果res等于0,提示“两个时间相等”,如果res大于0,提示“t1时间大于t2时间”,如果不符合上面两种情况,则提示“t2时间大于t1时间”。

7、在pan()函数外,创建两个时间变量,并调用pan()函数进行判断。

8、在浏览器打开test.html文件,查看判断的结果。

1.目前普遍的做法是用webpack打包引入时加入hash,例如有文件a,在webpack配置时可以写a[hash:8]. js,会生成八位的hash字符串。2.如果是老一点的项目,webpack改造麻烦的话,可以每次发布的时候手动改,比如在html中将a. js的引入改为a. js? 20210215,这样的后边加一个今天的日期,浏览器就不会使用缓存,会重新加载文件。个人经验,以供参考,有用采纳,有问题追答。

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

参考资料来源:JavaScript标准库-Date