0

我在几天内尝试获取日期数组的最后一个和第一个元素。

我的 xml 看起来像这样:

<markers>
<marker id="1" timestamp="12/31/2012 04:07:10"/>
<marker id="2" timestamp="12/31/2012 04:07:12"/>
<marker id="3" timestamp="12/31/2012 04:07:14"/>
<marker id="4" timestamp="12/31/2012 04:15:16"/>
</markers>

我可以在循环中获取日期,但是当我尝试获取第一个和最后一个时,我不能。结果是“未定义”消息。

代码是下一个:

 downloadUrl("myXml.asp", function(data) {
    var xml = xmlParse(data);

    var markersPath = xml.documentElement.getElementsByTagName("marker");    
    var path = []; 
    for (var i = 0; i < markersPath.length; i++) {
       var a = markersPath[i].getAttribute("timestamp"); 

       var b = new Date(a[a.length-1]); //last element of array
       var c = new Date(a[0]); //first element of array
    }//finish loop
   alert(b); // the message is an Invalid date
   alert(c); // the message is an Invalid date
}); //end download url

如果有人可以提供帮助,我将不胜感激。

最好的问候和新年快乐!

4

1 回答 1

1

您可以简单地获得所需的结果,而无需遍历数组:

var markersPath = xml.documentElement.getElementsByTagName("marker");
var a = markersPath[0].getAttribute("timestamp");
var b = markersPath[markersPath.length - 1].getAttribute("timestamp");
于 2012-12-31T10:12:51.917 回答