2017-01-06 1 views
0

시간을 HTML 페이지에서 찾기 전에 시간을 계산하려고했지만 그리니치 표준시입니다.Moment js 자바 스크립트를 사용하여 Fromnow()에 localtime을 사용하십시오.

나는 현재 내가 노력 .tz('Asia/Kolkata')와를 사용하여 내 로컬 영역에서 시간을 얻기 위해 노력

moment.utc(date).fromNow(); 

을 시도하고있다 :

moment.utc(date).from(moment(new Date()).tz('Asia/kolkata').format('llll')); 

이 아직 계산 그리니치 자오선의 시간이 걸립니다.

EDIT '날짜'는 노드 js 서버에서 JSON으로 전송됩니다. 날짜는 var date = moment(new Date()).tz('Asia/kolkata').format('llll')을 사용하여 계산됩니다. 나를 위해

은의 현지 '아시아/Kolkota'

+1

: 당신은 뭔가를 시도하는 것이 최선이야? –

+0

'date' 값이란 무엇입니까? 특별한 이유 때문에'moment (date)'대신'moment.utc (date)'를 사용하고 있습니까? 당신이 무엇을 얻고 있으며 원하는 것을 더 자세하게 설명 할 수 있습니까? 결과는 '아시아/콜카타'시간대 또는 현지 시간이어야합니다. – VincenzoC

답변

0

내가 문제가 당신이 momentJs 그것 (.format('llll')를 사용하여) 인식 할 수있는 형식으로 밤은 날짜 시간 문자열을 해석하려고 노력하고 생각이다.

주어진 날짜의 UTC와 현재 Asia\Kolkata 시간 사이의 시간차를 가져 오려고하는 경우. `문;은`date`이`moment.utc (날짜)에 표시한다 무엇 .fromNow()를

// get "now" in Asia Kolkata and format into a string that Moment will understand 
var dateFromServer = moment(new Date()).tz('Asia/kolkata').format('YYYY-MM-DD HH:mm:ss'); 
// to see a much different time try: 
//var dateFromServer = moment('2016-12-31 15:00:00').tz('Asia/kolkata').format('YYYY-MM-DD HH:mm:ss'); 

// on client get "now" in Asia Kolkata 
var nowInKolkata = moment().tz('Asia/kolkata'); 
// output string from "server" 
dateOutput.innerHTML = 'date from "server": ' + dateFromServer; 
// output difference between time "now" in Asia Kolkata, and the UTC version of the server date 
result.innerHTML = nowInKolkata.from(moment.utc(dateFromServer)); 

JSFIDDLE

+0

현재 날짜이고 몇 초 전에는 5 시간으로 표시됩니다. –

+0

'utc' 시간과'Asia/Kolkata '시간을 비교하고 있습니다. 아시아/콜카타는 + 5.5 시간입니다.'. from()'doesnt는 시간 수를 표시 할 때 반 시간을 보여줍니다. – haxxxton

+0

두 날짜 사이의 시간을 가져 오려고한다면, 아마도 같은 시간대 여야합니다. ie. 출력 차이에서'.utc()'을 사용하지 않거나 서버의 날짜에'.utc()'를 사용하면 원래의 질문은 서버 날짜가 시간대에 의해 상쇄되기를 원한다는 것을 암시하는 것처럼 보입니다 – haxxxton

관련 문제