javascript - 如何使用 Intl 获取工作日名称?

标签 javascript internationalization ecmascript-intl

我想在我的国际化应用程序中显示 7 个工作日的列表:

Sunday, Monday, Tuesday... Saturday

我靠Intl global object用于格式化日期/时间,但我找不到一种简单的方法来获取工作日名称。

我想我可以在 EPOCH 时间上增加一些天数,以达到一周的第一天,但​​我找不到只打印工作日的格式化程序。

var date = new Date(0);
date.setDate(4 + day);
for (var i = 0; i < 7; i++) {
  var weekday = new Intl.DateTimeFormat(["en"], {
      weekday: "short" // ?? what should I put here
  }).format(date);
  console.log(weekday);
}

输出:

Sunday, January 4, 1970
Monday, January 5, 1970
Tuesday, January 6, 1970
Wednesday, January 7, 1970
Thursday, January 8, 1970
Friday, January 9, 1970
Saturday, January 10, 1970

期望的输出:

Sunday
Monday
Tuesday
Wednesday
Thursday
Friday
Saturday

我还想要一个较短的日期版本,例如 Sun, Mon, Tue...

或者,有没有办法从 Intl 获取工作日 strings?我试图通过控制台探索该对象,但找不到它们。

最佳答案

我被误导了,因为我使用的是 Intl polyfill,它还不支持 { weekday: "short"} 作为选项。

使用 native Intl 实现按预期工作。

关于javascript - 如何使用 Intl 获取工作日名称?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30437134/

相关文章:

javascript - Chrome 是否停止支持 Intl 功能?

javascript - 如何使用jquery使用前一个id获取下一个div的id

javascript - 选择组件Vue JS - 默认选择值

javascript - Kendo 网格更改多个选定的单元格值

javascript - 如何更改 Google 登录按钮的语言

c++ - 为什么这个 C++ money_put<char> 程序不工作?

PhantomJS 不支持 Javascript 国际化 API

c# - ASP.Net 异步 HTTP 文件上传处理程序

Python: "...".encode ("utf8") 修复了什么?