当前位置: 首页 > 面试题库 >

IE 7中的Javascript Date函数出现问题,返回NaN

谈旺
2023-03-14
问题内容

我有一个Twitter提要,并且创建了一个新的日期obj,因此可以根据自己的喜好格式化日期。

var created = new Date(this.created_at)适用于Firefox和Chrome,但不适用于IE7。我似乎在通过new Date()函数传递日期方面遇到麻烦。它只是返回undefined和NaN。

这是代码。如果您尝试对其进行测试,请不要忘记添加jquery。谢谢。

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Twitter Test</title>
<script type="text/javascript" src="jquery-1.4.2.js"></script>
<script type="text/javascript" >

$(function(){
$.getJSON("http://twitter.com/statuses/user_timeline/google.json?count=1&callback=?", function(data){
    $.each(data, function(){
        var created = new Date(this.created_at)
        $("<div></div>").append("<ul><li>Unformatted: " + this.created_at + "</li><li>Formatted: " + created + "</li></ul>").appendTo("body")
    });

})

})

</script>
</head>

<body>
</body>
</html>

问题答案:

您需要确保将日期解析为UTC,否则javascript会将其解释为本地时区中的日期。

日期看起来像这样: Tue Jul 13 23:18:36 +0000 2010

您可以这样解析:

function parseDate(str) {
  var v=str.split(' ');
  return new Date(Date.parse(v[1]+" "+v[2]+", "+v[5]+" "+v[3]+" UTC"));
}

它将给出本地时区的正确日期/时间,例如: Tue Jul 13 2010 19:18:36 GMT-0400 (EDT)

因此,这应该使您的代码看起来像这样:

$(function(){
  $.getJSON("http://twitter.com/statuses/user_timeline/google.json?count=1&callback=?", function(data){
    $.each(data, function(){
      var created = parseDate(this.created_at);
      $("<div></div>").append("<ul><li>Unformatted: " + this.created_at + "</li><li>Formatted: " + created + "</li></ul>").appendTo("body");
    });
  });
  function parseDate(str) {
    var v=str.split(' ');
    return new Date(Date.parse(v[1]+" "+v[2]+", "+v[5]+" "+v[3]+" UTC"));
  } 
});


 类似资料:
  • 我正在编写一个递归函数,如下所示: 此函数用于接收员工并查找其管理者。如果找到管理器,则将管理器id推送到数组中($)- 所以我的问题是,如果我不在第6行返回递归调用(这是-

  • 问题内容: 我没有收到来自服务器的JSON类型数据作为响应。 我正在使用JSON插件。 如果我没有得到任何回应,但是如果我没有提及任何响应,那么我正在获取页面的HTML格式。 struts.xml: JSP页面: 控制台错误: org.apache.struts2.dispatcher.Dispatcher- 无法找到动作或结果没有为动作action.Part和结果定义结果。{和“ col1”:“

  • 本文向大家介绍自定义函数实现IE7与IE8不兼容js中trim函数的问题,包括了自定义函数实现IE7与IE8不兼容js中trim函数的问题的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了自定义函数实现IE7与IE8不兼容js中trim函数的方法。分享给大家供大家参考。具体实现方法如下: 这样就解决了IE上js不支持trim的问题。 希望本文所述对大家的javascript程序设计有所帮助。

  • 问题内容: 我没有从服务器获得JSON类型数据的响应。 我正在使用JSON插件。 如果我没有得到任何回应,但是如果我没有任何回应,那么我正在获取页面的HTML格式。 控制台错误: -找不到动作或结果没有为动作action.Part和结果定义结果。 我没有获得有关jQuery成功的数据。请纠正我,这是怎么了? 问题答案: 使用A 来指定在执行操作和结果时从回调函数返回的数据类型,以及从服务器返回的响

  • 本文向大家介绍python 解决函数返回return的问题,包括了python 解决函数返回return的问题的使用技巧和注意事项,需要的朋友参考一下 定义一个带返回值的函数,需要使用return语句在调用这个函数时返回一个目标值,当没有return时,函数默认返回None。 分析下面两个程序: out: 2017-9-25 out: 2017-9-25 None 对于第一个程序,仅仅调用了'no

  • 问题内容: 嘿,我只是在Java文档上浏览I / O流上的内容,而刚刚遇到了专门针对字节流的问题-如果输入是字节流,为什么read()不返回字节值? 我挠了一下头,但想不出任何有力的答案,如果有人能帮助我将不胜感激。 问题答案: 这是因为可以返回-1作为流结束(EOF)标记的指示符-即不再需要从流中读取字节。 更多详细信息:http : //download.oracle.com/javase/1