Javascript如何在使用时区时通过getDay验证日期

标签 javascript datetime

我正在尝试验证一周中的某一天是否等于星期三 (3),如果我按照以下步骤操作,则效果很好。

var today = new Date();

if (today.getDay() == 3) {
  alert('Today is Wednesday');
} else {
	alert('Today is not Wednesday');
}

但我无法对时区执行相同的操作。

var todayNY = new Date().toLocaleString("en-US", {timeZone: "America/New_York"});

if (todayNY.getDay() == 3) {
  alert('Today is Wednesday in New York');
} else {
	alert('Today is not Wednesday in New York');
}

最佳答案

new Date().toLocaleString()根据特定于语言的约定返回表示给定日期的字符串。所以可以这样做

var todayNY = new Date();

var dayName = todayNY.toLocaleString("en-US", {
    timeZone: "America/New_York",
    weekday: 'long'
})

if (dayName == 'Wednesday') { // or some other day
    alert('Today is Wednesday in New York');
} else {
    alert('Today is not Wednesday in New York');
}

关于Javascript如何在使用时区时通过getDay验证日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57187691/

相关文章:

javascript - onclick div 保存输入值

javascript - 使用 ShinyJS 初始化隐藏元素

php - 如何将日期时间插入具有所需时区的数据库?

python - 强制日期时间转换,强制日期时间数据类型,使用 pandas 中的 read_table

javascript - 滚动到 div 中的元素

javascript - IndexedDB keyPath 到对象深处的某个地方?

javascript - polymer - 结束绑定(bind)事件时 dom-repeat?

javascript - 当前时间在 hh :mm:ss tt formate in javascript

javascript - 检查时间段条件不可用

java - 仅获取 'Date' 之前的秒数