在 StackOverflow 和 CodeReview 网站上搜索,尚未尝试过此问题/帖子中描述的方法;它将 5 个伊斯兰日历的日期转换为 Javascript 中 18 个可用日历中的任何一个,而无需使用外部日期库或使用复杂的数学/天文公式。
\n我们都知道 Javascript 有一个内置方法(Intl.DateTimeFormat())将公历日期转换为各种日历日期(18 个世界日历),包括输出字符串的格式。
\n然而,Javascript并没有提供反向操作的内置方法,即将18个世界日历日期转换回公历日期(包括伊斯兰历日期)或其他日历。为此,您需要使用外部日期库来进行转换,例如“moment.js”等。
\n这里使用的方法/代码不使用外部库,而是使用Javascript Calendar Conversion by Target Approximation Method。下面的流程图总结了该方法的概念,该方法可用于将其他日历转换为剩余日历。
\n下面的简短 Javascript 函数提供了将五 (5) 个伊斯兰 (Hijri) 日历日期(从伊斯兰教纪年 -280,803 到 +281,510 AH)中的任何一个转换为以下 18 个 Javascript 日历中的任何一个的功能,并提供格式化选项结果输出:
\n"buddhist", "chinese", "coptic", "dangi", "ethioaa", "ethiopic", "gregory", "hebrew", "indian", "islamic", "islamic-umalqura", "islamic-tbla", "islamic-civil", "islamic-rgsa", "iso8601", "japanese", "persian", "roc", "islamicc".
该方法不使用外部库,也不使用复杂的数学或天文公式,仅依赖于 Javascript …