1

给定一个日期时间字符串,如下所示:

mystring = '2012-10-23T02:40:59Z'

我需要能够从字符串中获取星期几(0-6)。

如何将上述内容传递给 JS,以便可以执行以下操作:

var d = new Date(mystring);
var n = d.getDay();
console.log(n)

其中 n 返回 0-6。

谢谢

4

2 回答 2

1

虽然 Date 对象应该能够解析 ECMA-262 中的 ISO 8601 格式,但它不能跨浏览器可靠地工作,因此您最好手动解析它们:

function isoStringToDate(s) {
  var b = s.split(/\D/);
  return new Date(Date.UTC(b[0], --b[1], b[2], b[3]||0, b[4]||0, b[5]||0, b[6]||0));
}

然后您可以使用该getDay方法获取日期编号(星期日 = 0,星期六 = 6):

isoStringToDate('2012-10-23T02:40:59Z').getDay(); // 2 for me
于 2012-11-08T01:09:46.403 回答
0

做你提议的!

Date - getDay()

根据当地时间返回指定日期的星期几。

于 2012-11-08T00:51:12.797 回答