2016-11-29 36 views
5

chcę data być sformatowany w następującym formacie:Jak sformatować datę na arabski za pomocą polskich cyfr na datę i rok w JavaScript?

data: 04.12.2016 do الأحد, 4 ديسمبر, 2016

Ale ja otrzymuję następujący. Liczby są konwertowane na cyfry arabskie. Chcę datę i rok cyframi angielskiego:

الأحد, 4 ديسمبر, 2016

Użyłem następujący kod formatować datę na arabski.

var date = new Date('2016-12-04'); 
options = { 
      weekday: 'long', 
      year: 'numeric', 
      month: 'short', 
      day: 'numeric', 
      }; 
var dateString = date.toLocaleDateString('ar-SA', options); 
alert(dateString); 

Odpowiedz

1

znalazł rozwiązanie Date conversion and manipulation in javascript with Arabic months

Moje zmodyfikowany kod, aby mój sygnał wyjściowy jest następujący.

var date = new Date('2016-12-04'); 
 
var months = ["يناير", "فبراير", "مارس", "إبريل", "مايو", "يونيو", 
 
    "يوليو", "أغسطس", "سبتمبر", "أكتوبر", "نوفمبر", "ديسمبر" 
 
]; 
 
var days = ["اﻷحد", "اﻷثنين", "الثلاثاء", "اﻷربعاء", "الخميس", "الجمعة", "السبت"]; 
 
var delDateString = days[date.getDay()] + ', ' + date.getDate() + ' ' + months[date.getMonth()] + ', ' + date.getFullYear(); 
 

 
console.log(delDateString); // Outputs اﻷحد, 4 ديسمبر, 2016

+0

Zauważ, że 'new Date ('2016-12-04')' przeanalizuje ciąg znaków jako UTC, ale twoje metody * get * używają lokalnego. Użytkownicy w strefie czasowej na zachód od Greenwich zobaczą datę poprzedniego dnia. – RobG

1

Spróbuj 'AR-MA' (dla Maroka) zamiast 'AR-SA'.

+0

Powinien być komentarzem –

+0

Dlaczego powinien to być komentarz? To jest poprawna odpowiedź: https://www.ibm.com/support/knowledgecenter/SSS28S_3.0.0/com.ibm.help.forms.doc/locale_spec/i_xfdl_r_formats_ar_MA.html – Sarmad

+0

Próbowałem lokalizacji ** ar_MA **, pokazuje cyfrę arabską w przeglądarce Google Chrome V48. Ale to samo działało w Firefoksie. https://jsfiddle.net/daj2jm3p/3/ – shebin512