2014-12-05 2 views
0

Я работаю над некоторой аналитикой с помощью Диспетчера тегов Google.Функция JavaScript для реорганизации формата даты

У нас есть файл данных на сайте, одним из значений является дата в формате DDMMYYYY.

Для тега мультимедиа мне нужно изменить эту дату на ГГГГ-ММ-ДД.

Я пытаюсь что-то вроде этого в качестве примера: но я не могу заставить его работать. Я всего новичку с Javascript

(function(){ 
var d = {{Departure_Date}} 
var u = {{Departure_Date}}.replace(/(\d{2})(\d{2})(\d{4})/,'$3$2$1') 
return u 

})() 

Здесь {{DEPARTURE_DATE}} является переменной, доступ к dataLayer и вытаскивает оригинальный формат даты.

Любая помощь была бы принята с благодарностью.

+0

Любые ошибки в консоли? Обратите внимание, что '05122014.replace (...)' недопустимый код;) –

ответ

0

[предполагая {{Departure_Date}} это строка, как '04032003']

Почти там. Попробуйте [ddmmyyyy].replace(/^(\d{2})(\d{2})(\d{4})$/, '$3-$2-$1'). Кроме того, вы можете нарезать строку DDMMYYYY (см фрагмент)

var res = document.querySelector('#result'); 
 

 
res.innerHTML = 'input: 20052014, output: ' + 
 
       '20052015'.replace(/^(\d{2})(\d{2})(\d{4})$/, '$3-$2-$1'); 
 

 
// Alternative: 
 
var inp = '18072013'; 
 
res.innerHTML += '<br>input: 18072013, output: ' + 
 
       [inp.slice(4), inp.slice(2,4), inp.slice(0,2)].join('-');
<div id="result"><div>

+0

Я заметил, что у вас есть котировки вокруг значения даты. Есть ли у нас доказательства того, что в коде OP есть такие цитаты? ;) –

+0

Учитывая формат DDMMYYYY, я предположил строковое значение (например, 02021993). Метод 'replace' будет еще одним признаком' {{Departure_Date}} 'является строкой. – KooiInc

+0

Я согласен с вами, но, допустим, это был PHP, и у меня было '. replace (...) '- хотя у меня есть строка в PHP, рендеринг JavaScript не получает кавычек. –