Javascript Intl DatetimeFormatter 作为(ISO_8601|自定义)输出模式
Javascript Intl DatetimeFormatter as (ISO_8601|custom) output pattern
我想使用 Intl.DateTimeFormat 但要使用自定义输出模式。
我将此方法用于 php 版本的 ICU 日期格式,并且效果很好。
$fmt = datefmt_create(
'fa_IR@calendar=persian',
IntlDateFormatter::FULL,
IntlDateFormatter::FULL,
'Asia/Tehran',
IntlDateFormatter::TRADITIONAL,
'EEEE d MMMM yyyy HH:mm' // as ISO_8601
);
echo datefmt_format($fmt, time()) . "\n";
// پنجشنبه ۱۰ اردیبهشت ۱۳۹۴ ۱۲:۱۲
如何在 Intl.DateTimeFormat 中将模式设置为 ICU 文档,例如 php 版本的 ICU 日期时间格式化程序。
我的javascript代码
console.log(new Intl.DateTimeFormat('fa-IR-u-ca-persian').format(new Date()));
如何在我的 javascript 格式模式中设置 ISO_8601 模式,如 EEEE d MMMM yyyy HH:mm
或 MM yy dd
等?
你不能。
Intl
实现的想法是根据您提供的语言环境条款,为您提供 "right" 格式的任何请求,可能受 Unicode 扩展子标签的约束,类似于配置某些行为的细微差别。 Intl
不提供任何方式来指定和使用特定的格式模式。 ISO-8601 格式不能保证是适合任何特定语言环境的格式,因此您不能使用 Intl
来生成它。
如果您想根据所需数值中的特定模式设置日期格式,您必须通过调用 Date.prototype.getMonth
和类似函数来自行实现它以获取数字,然后将它们插入提供的模式。
我想使用 Intl.DateTimeFormat 但要使用自定义输出模式。 我将此方法用于 php 版本的 ICU 日期格式,并且效果很好。
$fmt = datefmt_create(
'fa_IR@calendar=persian',
IntlDateFormatter::FULL,
IntlDateFormatter::FULL,
'Asia/Tehran',
IntlDateFormatter::TRADITIONAL,
'EEEE d MMMM yyyy HH:mm' // as ISO_8601
);
echo datefmt_format($fmt, time()) . "\n";
// پنجشنبه ۱۰ اردیبهشت ۱۳۹۴ ۱۲:۱۲
如何在 Intl.DateTimeFormat 中将模式设置为 ICU 文档,例如 php 版本的 ICU 日期时间格式化程序。
我的javascript代码
console.log(new Intl.DateTimeFormat('fa-IR-u-ca-persian').format(new Date()));
如何在我的 javascript 格式模式中设置 ISO_8601 模式,如 EEEE d MMMM yyyy HH:mm
或 MM yy dd
等?
你不能。
Intl
实现的想法是根据您提供的语言环境条款,为您提供 "right" 格式的任何请求,可能受 Unicode 扩展子标签的约束,类似于配置某些行为的细微差别。 Intl
不提供任何方式来指定和使用特定的格式模式。 ISO-8601 格式不能保证是适合任何特定语言环境的格式,因此您不能使用 Intl
来生成它。
如果您想根据所需数值中的特定模式设置日期格式,您必须通过调用 Date.prototype.getMonth
和类似函数来自行实现它以获取数字,然后将它们插入提供的模式。