如何将文本字符串更改为日期对象?

时间:2011-11-17 12:18:54

标签: javascript jquery

我从服务器获取字符串,我需要将提取字符串转换为新的日期对象..为此,我尝试了这个函数,但没有用,任何人都可以帮我将字符串转换为日期对象? / p>

我的代码是:

var nationZone = {
        getNewYorkLocalTime :  'getTime.php?lat=40.71417&lan=74.00639',
        getLondonLocalTime : 'getTime.php?lat=51.5&lan=0.1166667',
        getChennaiLocalTime :  'getTime.php?lat=13.0833333&lan=80.2833333',
        getBangaloreLocalTime:'getTime.php?lat=12.9833333&lan=77.5833333'

    }

     $.each(nationZone , function(key, value){
        $.get(value, function(response){
            var newdate = $(response).find('localtime').text();
            if(key == "getNewYorkLocalTime"){
                var newyourktime = new Date(newdate);
                newyourktime.getTime()
            }
        });
    });

但是,newyourktime只显示当地时间..请帮忙吗?我收到服务器的回复是:2011年11月17日18:09:47 - 就像这样。

3 个答案:

答案 0 :(得分:1)

使用http://www.datejs.com/ 举个例子:

var newyourktime = Date.parse('2011-11-11, 11:11 AM');
alert(newyourktime.toString('dd/mm/yyyy HH:mm:ss EST'));

查看Datejs库文档以满足您的要求,在解析了日期字符串后,您可以使用它做很多事情。

答案 1 :(得分:0)

这将尝试使用客户端计算机自己的本地设置来解析日期,这是不好的。

不是将其作为字符串传递,而是将其作为自1970年1月1日午夜以来经过的总秒数传递,并在构造JavaScript的新Date对象时使用此数字。

例如,传递此号码:1321614000000,您将在2011年11月18日,下午1点

答案 2 :(得分:0)

您可以使用substr

day = newdate.substr(0,2);
month = newdate.substr(3,3);
year = newdate.substr(7,4);
var newyorktime = new Date(year, month, day);

Substr