我正在處理我的本地(PST)時區,並調用以UTC爲單位的Web服務。將我的JavaScript日期時間轉換爲來自PST的UTC
webservice以「2011-02-09T12:00:00」格式開始和結束日期,當前代碼使用starttime = 30天前,endtime = now。
下面的代碼:(?大概是因爲它把它在未來也許)
var s = new Date();
var e = new Date();
s.setTime(d.getTime() - 30 * 24 * 60 * 60 * 1000);
var startdate = String.Format("datetime'{0:df(yyyy-MM-dd)}T{0:df(HH:mm:ss)}'", s);
var enddate = String.Format("datetime'{0:df(yyyy-MM-dd)}T{0:df(HH:mm:ss)}'", e);
var url = String.Format("http://foo.com/webservice.svc/data?start={1}&end={2}&$format=json", startdate, enddate);
var obj = GetJsonObjectFromServer(url);
我試着只是增加25200000毫秒到d和b但是這導致S是返回一個無效的日期。
因爲它使用的是PST,我的本地時區,因此我將這些參數傳遞到的web服務不會返回所有數據,因爲服務器處於UTC狀態,因此缺少8小時的時間範圍。
我已經嘗試了一堆UTC方法,但問題是將它恢復爲我需要的web服務的格式。我會感激更直接的指導,而不是指向JavaScript的UTC方法。
有一些簡單的我很想在這裏,並會愛的幫助!
你有更具體的說明嗎?我需要獲取當前日期,那麼你是否提出類似「var d = Date.UTC(foo.getYear(),foo.getMonth(),...)」來獲取當前日期參數並轉換爲UTC? – TMC 2011-03-27 00:23:49
JavaScript有許多UTC日期方法:http://www.w3schools.com/jsref/jsref_obj_date.asp – BoltBait 2011-03-27 00:34:20