如何在JavaScript中使用日期和年份的英文数字将日期格式化为阿拉伯语?
问题描述:
我想要的日期按以下格式进行格式化:如何在JavaScript中使用日期和年份的英文数字将日期格式化为阿拉伯语?
日期:2016年12月4日到الأحد,4ديسمبر年,2016年
但我发现了以下内容。数字转换为阿拉伯数字。我想用英文数字的日期和时间:
الأحد,4ديسمبر年,2016年
我用下面的代码来格式化日期为阿拉伯语。
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);
答
实测值的溶液Date conversion and manipulation in javascript with Arabic months
我的修改后的代码,让我的期望的输出如下。
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
答
尝试 'AR-MA'(摩洛哥),而不是 'AR-SA'。
注意'新的日期(“2016年12月4日”)'将解析字符串作为UTC,但你的*获取*方法是使用本地。格林威治西部时区的用户将看到前一天的日期。 – RobG