Как форматировать дату с помощью Jquery Append [duplicate]

10
задан Mivaweb 5 December 2014 в 12:15
поделиться

4 ответа

Используйте функцию ToJavaScriptDate(), которая делает это для вас:

function ToJavaScriptDate(value) {
  var pattern = /Date\(([^)]+)\)/;
  var results = pattern.exec(value);
  var dt = new Date(parseFloat(results[1]));
  return (dt.getMonth() + 1) + "/" + dt.getDate() + "/" + dt.getFullYear();
}

Функция ToJavaScriptDate() принимает значение в формате \/Date(ticks)\/ и возвращает строку даты в формате MM/dd/yyyy. Внутри функция ToJavaScriptDate() использует регулярное выражение, представляющее шаблон /Date\(([^)]+)\)/. Метод exec() принимает значение исходной даты и тесты для соответствия в значении. Возвращаемое значение exec() - это массив. В этом случае второй элемент массива результатов (results[1]) содержит часть тиков исходной даты.

Например, если исходное значение равно \/Date(836418600000)\/, тогда results[1] будет 836418600000 ]. На основе этого значения тиков формируется объект JavaScript Date. Объект Date имеет конструктор, который принимает число миллисекунд с 1 января 1970 года. Таким образом, dt содержит действительный объект JavaScript Date. Затем функция ToJavaScriptDate() форматирует дату как MM/dd/yyyy и возвращается к вызывающему абоненту.

Вы можете использовать функцию ToJavaScriptDate(), как показано ниже:

options.success = function (order) {
 alert("Required Date : " + ToJavaScriptDate(order.RequiredDate) + ", Shipped Date : " + ToJavaScriptDate(order.ShippedDate));
};

выше пример использует дату в формате MM/dd/yyyy, вы можете использовать любой другой формат после создания объекта Date.

Ссылка

: Ссылка

19
ответ дан Jérémie Bertrand 25 August 2018 в 11:54
поделиться
  • 1
    Вот версия со временем: function ToJavaScriptDateTime(value) { var pattern = /Date\(([^)]+)\)/; var results = pattern.exec(value); var dt = new Date(parseFloat(results[1])); return dt.getHours() + ":" + dt.getMinutes() + " " + ('0' + dt.getDate()).slice(-2) + "." + ('0' + (dt.getMonth() + 1)).slice(-2) + "." + dt.getFullYear(); } – SFin 26 September 2018 в 14:14
1
ответ дан chridam 25 August 2018 в 11:54
поделиться

Если вы открыты для использования другой библиотеки JavaScript:

http://momentjs.com/docs/#/parsing/asp-net-json-date/

1
ответ дан Even Mien 25 August 2018 в 11:54
поделиться
1
ответ дан Richard Housham 25 August 2018 в 11:54
поделиться
Другие вопросы по тегам:

Похожие вопросы: