Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/date/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
cs Cz语言环境和JavaScript新日期构造函数不';不考虑速记日期_Javascript_Date_Locale - Fatal编程技术网

cs Cz语言环境和JavaScript新日期构造函数不';不考虑速记日期

cs Cz语言环境和JavaScript新日期构造函数不';不考虑速记日期,javascript,date,locale,Javascript,Date,Locale,因此,我正试图遵循MDN上关于格式化日期选项的文档 对于cs cz区域设置,我希望在编写诸如 19。122012年而不是19年。pro 201 此代码适用于en-us或it(意大利)等地区 var date = new Date(Date.UTC(2012, 11, 20, 3, 0, 0, 200)); var options = { month: 'short', day: 'numeric', year: 'numeric'}; console.log(new Intl.DateTime

因此,我正试图遵循MDN上关于格式化日期选项的文档

对于cs cz区域设置,我希望在编写诸如

19。122012年
而不是
19年。pro 201

此代码适用于en-us或it(意大利)等地区

var date = new Date(Date.UTC(2012, 11, 20, 3, 0, 0, 200));
var options = { month: 'short', day: 'numeric', year: 'numeric'};
console.log(new Intl.DateTimeFormat('en-us', options).format(date));
打印出2012年12月19日<代码>

有人能帮我让cs cz语言环境正常工作吗。此代码

var date = new Date(Date.UTC(2012, 11, 20, 3, 0, 0, 200));
var options = { month: 'short', day: 'numeric', year: 'numeric'};
console.log(new Intl.DateTimeFormat('cs-cz', options).format(date));
打印出来

19。122012年
而不是
19年。pro 201


我想要
19。pro 201使用JavaScript日期函数。这在我基于13个地区的代码中都是动态的,捷克语是唯一给我带来麻烦的语言。

这确实是一个奇怪的难题。事实证明,如果在options对象中包含
week
格式,它将提供所需的输出。下面的代码简单地使用它,然后从字符串中删除周名称

我没有修改年份,这将由您决定,但我相信这解决了您的问题并回答了您的问题

const options={weekday:'long',year:'numeric',month:'short',day:'numeric'};
const date=新日期(date.UTC(2012,11,20,3,0,0200));
const out=date.toLocaleDateString('cs-CZ',options.).split('').splice(1).join('');

控制台。注销是的,谢谢-这就是我最后选择的路线。我猜JavaScript日期构造函数中有一个bug。谢谢,我只是希望还有其他问题。你可以随时向TC-39提交一个bug@gary1410与日期构造函数无关。Date.prototype.toLocaleDateString的选项基于ECMA-402,ECMA-402与ECMAScript(ECMA-262)是完全不同的规范,是关于格式化的,而不是构造的。;-)由特定语言代码创建的实际格式没有标准化,这就是“本地化”的全部要点。它还强调了格式化在很大程度上是一种个人观点:在捷克的短短一个月里,无论是谁编写了Intl.DateTimeFormat的实现,都与您对它应该是什么的看法不同。它还强调,将语言代码称为“locale”是一种用词不当的行为。