2017-01-24 3 views
0

Я использую этот код .:toLocaleDateString отличается, используя тот же язык

date.toLocaleDateString('pt-BR') 
  • В моем хромированной браузере результат .: 9/13/2016
  • Когда я запускаю тесты в местной .: 2016-09-13
  • Когда я коротышка тесты в круг CI .: 9/13/2016

Что происходит?

Пс .: Я использую Jest и JSDom для своих тестов.

+0

попробовать 'новый Intl.DateTimeFormat ('PT-BR'). Формат (дата)' Кроме того, [проверить эту ссылку] (http://stackoverflow.com/questions/21413757/tolocaledatestring-изменения-в-ie11) – Tareq

ответ

2

Используйте toLocaleDateStringoptions для установки фиксированного формата.

var date = new Date(); 
 
var options = { year: 'numeric', month: '2-digit', day: '2-digit' }; 
 
console.log(date.toLocaleDateString('pt-BR', options));

0

Почему бы не использовать moment.js? Это простой и минималистская библиотека для обработки стороны даты сервера и на стороне клиента, локали зависят от системы и еще несколько вещей, используйте момент, и вы будете уверены, что правильный формат moment.js

Смежные вопросы