You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何将波斯语(Farsi)日期中的数字字形转换为阿拉伯数字字形?

实现方案

你需要的效果可以通过固定字符映射替换实现,波斯语数字和阿拉伯数字有一一对应的Unicode编码,替换过程不会改动日期的实际年月日数值,仅修改数字的显示字形:

核心代码修改

你只需要新增一个数字转换函数,对toLocaleDateString返回的波斯语日期字符串做一次替换处理即可,完整代码如下:

JavaScript 代码

// 波斯语数字转阿拉伯数字工具函数
function convertFaNumToArNum(str) {
  const faNumMap = ['۰','۱','۲','۳','۴','۵','۶','۷','۸','۹'];
  return str.replace(/[۰-۹]/g, match => faNumMap.indexOf(match));
}

var today = new Date().toLocaleDateString('fa-IR');
var field = document.querySelector('#tday');
// 转换后再赋值给输入框
field.value = convertFaNumToArNum(today);

HTML 代码

无需修改原有代码:

<input type="text" name="tday" class="form-control w-100 text-center d-inline-block" id="tday">

效果说明

转换前的波斯语日期۱۴۰۰/۰۶/۳۱经过处理后,输出结果就是你需要的1400/06/31,日期数值完全和原始波斯语日期一致,仅数字显示字形变更。

内容的提问来源于stack exchange,提问作者smmmm

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.03 14:27:05