1. 程式人生 > >獲得本地時間和伺服器時間的區別

獲得本地時間和伺服器時間的區別

開發專案的時候,有時候我們需要用到獲取時間來做各種處理。例如倒計時,這時候,就有一個疑問,直接建立日期物件和從伺服器上獲取有什麼區別呢?

主要的區別是,建立日期物件之後,各種UTC時間的獲取是以何日期為基準

獲取本地的時間如下,加入現在的時間是北京時間2018-08-31 11:04:20,那麼根據如下方法獲取的時間跟別對應的

dateYear:2018
dateMonth:8
dateDay:31
dateHour:11
dateMinutes:4
dataSeconds:20
但是當你把本地的改為北京時間2018-09-01 12:12:12,那麼如下或者的時間則會變
dateYear:2018
dateMonth:9
dateDay:1
dateHour:12
dateMinutes:12
dataSeconds:12
雖然是用一個時間點,但是你改變本地的裝置之後,用同一個方法獲取到的時間完全不一樣,這個獲取不符合我們的需求

那麼如何獲取準確的標準時間,而不會由於改變本地裝置的時間而改變呢,每個裝置獲取的時間都是一樣的?這時候就要獲取伺服器的時間了。

使用如下的方法,獲取到的時間就不會由於改變本地裝置的時間的改變而改變了

const self=this;
var xhr = new XMLHttpRequest();
console.log(xhr);
if( !xhr ){
  xhr = new ActiveXObject("Microsoft.XMLHTTP");
}
xhr.open("HEAD",location.href,true);
xhr.onreadystatechange=function(){
  if( xhr.readyState == 4 && xhr.status == 200 ){
    this.currentytime=xhr.getResponseHeader("Date");

    let date= new Date(this.currentytime);

    let dateYear=date.getFullYear();

    let dateMonth=date.getUTCMonth()+1;//0-11,

    let dateDay = date.getUTCDate();//1-31

    let dateHour=date.getUTCHours()+8;//0-23

    const dateMinutes= date.getUTCMinutes()//0-59

    const dataSeconds= date.getUTCSeconds();//0-59
  }
}

相關推薦

獲得本地時間伺服器時間區別

開發專案的時候,有時候我們需要用到獲取時間來做各種處理。例如倒計時,這時候,就有一個疑問,直接建立日期物件和從伺服器上獲取有什麼區別呢? 主要的區別是,建立日期物件之後,各種UTC時間的獲取是以何日期為基準 獲取本地的時間如下,加入現在的時間是北京時間2018-08-31

java 專案時間伺服器時間不一致

  今天線上專案關於時間的幾個任務都出了問題,檢視日誌發現日誌的時間不對,用的是log4j,日誌輸出的時間都早了很長時間。 1 首先先登上伺服器查看了伺服器的系統時間 linux下 date命令 時間正確的。 2 瀏覽網頁發現有個硬體時間,系統時間是指當前Linux Kernel中的時鐘,而硬體時鐘則是主

(Lua) 客戶端本地時間伺服器時間戳不一致的解決方案

問題來源:伺服器的時間是固定的,國內一般都設定為北京時間(東8時區的時間),而客戶端分佈在世界各地,客戶端系統設定的時區是不固定的。很多時候在設計時,沒有考慮時區不一致的情況,直接使用時間戳來進行時間轉換和比較,往往出現很多預想不到的問題。基本概念/方法:1、【時區】:全世界

SQL Server 本地時間UTC時間的相互轉換

get gpo () localdate lda code date() post nbsp SET @UTCDate = DATEADD(hour, DATEDIFF(hour,GETDATE(),GETUTCDATE()), @LocalDate) SET @Local

UTC時間普通時間區別

col strong cal 區別 active ron enable shang sha UTC時間 [root@openstack01 ~]# timedatectl Local time: Sat 2018-08-18 23:04:24 C

線上時間伺服器時間轉化為本地時間

reawardData.Seconds = msg.Seconds;//伺服器發過來的玩家線上時間 PlayerData.Instance.OnlineGiftData.ServerTime = Globals.MTimeManager.ServerLongTimeNow

本地時間格林威治時間轉換

/*** * 轉成格林威治時間 * * @param LocalDate 時間格式必須是yyyy-MM-dd HH:mm:ss * @return */ public static Stri

java獲得當前時間當前時間前30秒時間

import java.util.Calendar; import java.util.Date; import java.util.GregorianCalendar; //獲得當前時間和當前時間前30秒時間 SimpleDateFormat df = new Sim

Java 改變伺服器時區為特定時區(解決獲取系統時間伺服器相差8個小時)

//轉換伺服器時區為東八區 TimeZone timeZoneSH = TimeZone.getTimeZone(“Asia/Shanghai”); SimpleDa

linux c語言獲得時間列印時間

轉載來自:http://www.cnblogs.com/carekee/articles/3252268.html #include<time.h> //C語言的標頭檔案    #i

JS有關與現在時間比較的問題,伺服器時間相關的

<script  language="javascript" runat="server">         function sDateDiff(vDay,vTime)         {             var vstartDate=vDay+' '

伺服器時間資料庫時間的校驗

問題與分析 今天在公司進行Sanity Test(可用性測試)時發現伺服器啟動失敗,查詢log後發現在啟動時發生了異常導致了伺服器啟動失敗。 由於公司的伺服器和資料庫分別部署在不同的主機,所以會在啟動時進行時間上的校驗,如果兩臺主機的時間差超過600s就會丟

QDateTime 本地時間UTC時間轉換問題

        先說一下UTC,搜尋360百科: 協調世界時,又稱世界統一時間、世界標準時間、國際協調時間,簡稱UTC,是以原子時秒長為基礎,在時刻上儘量接近於世界時的一種時間計量系統。1979年12月3日在內瓦舉行的世界無線電行政大會通過決議,確定用“世界協調時間”取代“

本地時間UTC時間 轉換

本地時間轉UTC時間 // yyyy-MM-dd HH:mm:ss 東八區 +8 public static String parseStringToUtc(String string)

utc時間local 時間互轉

python utc time local time python 1.utc 時間和 local 時間互轉#utc 轉本地時間def utcFlocaltime(utc_time): utc_time = utc_time + datetime.timedelta(hour

crontab執行時間系統時間不一致

google 服務器 shanghai share crontab執行時間和系統時間不一致

ORACLE取周、月、季、年的開始時間結束時間

mil nth spa direction light 4.5 oracl afr oracle  1 取周的開始時間和結束時間 取周的開始時間。以星期一為開始。 SQL>S

PYTHON學習創建當先時間昨天時間

time python datetime 1.獲取當前時間: #導入模塊time import time print time.strftime(‘%H-%M-%S‘) 時間格式: %y 兩位數的年份表示(00-99) %Y 四位數的年份表示(000-9999) %m 月份(01-12) %d

(轉)Centos7 修改硬件時間系統時間

num root cto zone 時區 lec 時鐘 硬件時間 調整 查看硬件時間 [root@localhost ~]# hwclock --show Tue 13 Jun 2017 02:11:12 AM CST -0.848845 seconds 1 2

Centos7 修改硬件時間系統時間

timezone 硬件時間 gpo show class set centos 硬件時鐘 med 查看系統時間 [root@localhost ~]# date Tue Jun 13 10:20:13 CST 2017 查看硬件時間 [root@localho