如何在js中显示时区?

时间:2015-11-14 07:40:19

标签: javascript datetime timezone

可能有一个明显的解决方案,但我无法弄清楚如何让javascript显示我所在的时区。

我知道d.toTimeString在括号中显示时区,但它也显示GMT偏移量和秒数,这两者都不是我需要的。它还显示24小时的时间,这是我不想要的。我已经创建了一个脚本,按照我想要的方式格式化时间,这类似于"星期六,11月14日,上午2:36"但我无法弄清楚如何将时区添加到它的末尾。我希望它能说" 2:36 am EST"。

我该怎么做?

2 个答案:

答案 0 :(得分:1)

尝试以下方法:

var d = new Date();
var timezone = /\(([^)]+)\)/.exec(d.toTimeString())[1];

JSFiddle:http://jsfiddle.net/pfume4j2/

我使用的代码使用正则表达式从d.toTimeString中提取时区值。

答案 1 :(得分:0)

我在小提琴中测试了它,下面的代码..

HTML

<input type="button" onclick="return clicked()" value="Click here">

的JavaScript

function clicked()
{
    var d = new Date()
    var n = d.getTimezoneOffset();

    if(parseInt(n)<=0)
    {
        alert(d.toTimeString().split("+")[0]);
    }
    else
    if(parseInt(n)>=60)
    {
       alert(d.toTimeString().split("-")[0]);
    }
    else
    {
        alert(d.toTimeString());
    }
}

您可以进一步拆分它,并根据您的要求进行自定义。