随笔 - 419  文章 - 3  评论 - 331  阅读 - 120万

JQuery获取本地时间和服务器时间

我们都知道直接使用 new Date() 获取到的是访问当前网站的客户机本地的时间,有的时候这个时间有可能因为人为修改,主板电池没电等原因导致获取到的时间不准确。因此,在开发中,需要获取当前时间进行操作,应该直接使用JS获取服务器的时间。

获取本地当前时间(时间戳):

var nowTime = new Date().getTime()/1000;

获取服务器当前时间(时间戳):

复制代码
// 创建全局变量,也可以是局部的
var serverTime = ''
// 通过ajax访问服务器,获取服务器时间
$.ajax({
    async: false,
    type: "GET",
    success: function(result, status, xhr) {
        serverTime = new Date( xhr.getResponseHeader("Date"));
        serverTime = (new Date(serverTime)).getTime() / 1000;
    },
    error: function (a) {

    }
});
复制代码

时间戳转换为日期格式:

复制代码
    var time, year, month, date, hours, minutes, seconds;
    time = new Date();
    year = time.getFullYear();
    //以下是通过三元运算对日期进行处理,小于10的数在前面加上0
    month = (time.getMonth() + 1) < 10 ? ("0" + (time.getMonth() + 1)) : (time.getMonth() + 1)
    date = time.getDate() < 10 ? ("0" + time.getDate()) : time.getDate();
    hours = time.getHours() < 10 ? ("0" + time.getHours()) : time.getHours();
    minutes = (time.getMinutes() < 10 ? ("0" + time.getMinutes()) : time.getMinutes());
    seconds = (time.getSeconds() < 10 ? ("0" + time.getSeconds()) : time.getSeconds());
    //拼成自己想要的日期格式,2018-01-15 19:05:33
    time = year + "-" + month + "-" + date + " " + hours + ":" + minutes + ":" + seconds;
    console.log(time)
复制代码

封装成方法:

复制代码
function filterTime(time) {
      var date = new Date(time)
      var Y = date.getFullYear()
      var M = date.getMonth() + 1 < 10 ? '0'+(date.getMonth()+1) : date.getMonth()+1 
      var D = date.getDate()
      var hours = date.getHours() < 10 ? ("0" + date.getHours()) : date.getHours();
      var minutes = (date.getMinutes() < 10 ? ("0" + date.getMinutes()) : date.getMinutes());
      var seconds = (date.getSeconds() < 10 ? ("0" + date.getSeconds()) : date.getSeconds());
      return `${Y}-${M}-${D} ${hours}:${minutes}:${seconds}`
}
复制代码

 

posted on   JoeYoung  阅读(259)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 【.NET】调用本地 Deepseek 模型
· CSnakes vs Python.NET:高效嵌入与灵活互通的跨语言方案对比
· DeepSeek “源神”启动!「GitHub 热点速览」
· 我与微信审核的“相爱相杀”看个人小程序副业
· Plotly.NET 一个为 .NET 打造的强大开源交互式图表库
历史上的今天:
2020-04-28 Vue 简单实例 地址选配10 - 确认地址 - 下一步
2020-04-28 Vue 简单实例 地址选配9 - 确认地址 - 删除地址
< 2025年2月 >
26 27 28 29 30 31 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 1
2 3 4 5 6 7 8

点击右上角即可分享
微信分享提示