3

我正在寻找 javascript 代码,它将根据本地时区(客户端浏览器时区)给我当月的第一个日期。

目前我正在使用下面的代码:

var startDate =new Date (2012,5,1);

这正确地给了我这个值:

2012 年 6 月 1 日星期五 00:00:00 EDT

但是,当我在贝鲁特的浏览器(格林威治标准时间 +2.00)中尝试相同的操作时,它“有时”会给出 5 月 31 日(这意味着如果我早上尝试它会给我 31 日,但贝鲁特下午时间可以正常工作)

基本上我需要获取本地浏览器当前的第一个日期。有什么建议么?

4

1 回答 1

3

调用不带参数的Date函数,总是返回浏览器的当前时间,它从操作系统获取时间和时区。

试试这个:

var now = new Date(),
    first = new Date(now.getFullYear(), now.getMonth(), 1);
alert(first);

​您可以尝试使用查看时区now.getTimezoneOffset();

于 2012-06-20T17:53:37.313 回答