2015-03-20 1 views
0

У меня есть SQL Server DB, у которой есть столбец datetime. У меня есть дата, хранящаяся там как «2015-12-25 00: 00: 00.000». Я читаю эти данные в своем приложении JavaScript через brezze и ASP.NET Web API. Дата, которую я вижу на JavaScript, - «Пятница 25 декабря 2015 года 05:30:00 GMT + 0530 (стандартное время Шри-Ланки)».Javascript, считывая дату по местному часовому поясу

Что мне нужно сделать, чтобы получить время, как в БД?

ответ

0

Используйте следующие функции

> Date.prototype.yyyyMMDDHHmmss = function() { 
... var yyyy = this.getFullYear().toString(); 
... var mm = (this.getMonth()+1).toString(); 
... var dd = this.getDate().toString(); 
... var hh = this.getHours().toString(); 
... var MM = this.getMinutes().toString(); 
... var ss = this.getSeconds().toString(); 
... return yyyy + "-" + (mm[1]?mm:"0"+mm[0]) + "-" + (dd[1]?dd:"0"+dd[0]) + " " + (hh[1]?hh:"0"+hh[0]) + ":" + (MM[1]?MM:"0"+MM[0]) + ":" + ((ss[1]?ss:"0"+ss[0])); 
... } 
> d = new Date('2015-12-25 00:00:00.000') 
> d 
Fri Dec 25 2015 00:00:00 GMT+0530 (IST) 
> d.yyyyMMDDHHmmss() 
'2015-12-25 00:00:00' 
+0

Спасибо, я видел несколько постов, где они используются пользовательские функции. Мне было интересно, есть ли простой способ сделать это без написания пользовательских функций? – devC

+1

нет, что я знаю в js. вы можете искать библиотеки, которые обеспечивают такие преобразования (форматирование). Не могли бы вы также прочитать строку из базы данных как 'string', а не как' Date() '- просто думать. –

+0

Я также вижу другой вопрос. Когда я отправляю данные обратно на сервер, это выглядит как «2015-12-24T18: 30: 00.000». Любая идея, почему это так? – devC