2013-08-09 2 views
0

Я использую Date(). GetTime(), чтобы установить время активности пользователя в моем приложении. Но в двух разных машинах (мобильный и ПК) кажется, что они возвращают разное значение. Если я получаю время сначала с мобильного и после ПК, значение, возвращаемое с Date(). GetTime() мобильного должно быть незначительным по стоимости ПК, но является наоборот!метод javascript для правильного определения времени

Это метод для установки времени:

var user = this.get("objectId"); 
var lastactivity=Math.round(new Date().getTime()/1000); 

this.set("lastactivity",lastactivity); 

var User = Parse.Object.extend("User"); 
var query = new Parse.Query(User); 
query.get(user, { 
    success: function(object) { 
     console.log(object); 
     object.set("lastactivity", lastactivity); 
     object.save(); 
    }, 
    error: function(object, error) { 
     // handle error 
    } 
}); 
+3

'Date.getTime()' возвращает внутреннее время часов компьютера, который может быть неправильным. – Alnitak

+0

Большое спасибо, и как я могу получить одно и то же время? –

ответ

3

new Date() является только точным и часы на каждом из этих устройств. Если сами устройства не идеально синхронизированы, ожидается, что вы получите разные значения. Вообще говоря, лучше назначать временные метки на сервере, когда данные отправляются ... если все клиенты разговаривают с одним и тем же сервером, вам не нужно беспокоиться о часах на устройствах ваших пользователей.

+0

Я не могу использовать свое время сервера, потому что не получил в реальном времени api service.i'm tryng с http://www.timeapi.org/, но вернул строку date.How можно сравнить время с двумя строками? –

+0

var timestamp = Date.parse (строка) –

-2

установка часов в 0000

var d = new Date(); 
var myDate = new Date(d.setHours(0,0,0,0)); 

теперь использовать эту дату попробовать, вы получите то же самое время во всех местах. В вашем случае вы можете попробовать это

var user = this.get("objectId"); 
var lastactivity=Math.round(myDate.getTime()/1000); 
Смежные вопросы