var getServerTime = (function() { // calcolo immediatamente la differenza di tempo tra client e server, senza aspettare il caricamento della pagina, per avere il valore piu' accurato possibile. // la funzione restituira' direttamente l'oggetto Date con la data e ora del server. var localTime = new Date(); var ServerDate = '2017/10/19'; var ServerTime = '01:46:32'; var serverDateTime = new Date(ServerDate); var hh = ServerTime.match(/([0-9]{2}):([0-9]{2}):([0-9]{2})/); var mm = hh[2]; var ss = hh[3]; hh = hh[1]; serverDateTime.setHours(hh); serverDateTime.setMinutes(mm); serverDateTime.setSeconds(ss); // add clientOffsetMillis to local time to get server time clientOffsetMillis = serverDateTime - localTime; return function () { var d = new Date(); d.setTime(d.getTime() + clientOffsetMillis); return d; } })(); var serverDate = {getServerTime: getServerTime};