2011-12-24 51 views
-1

我打电话给一个完美的YouTube XML表单。但是,我无法从其中一个数组中设置值。我希望将“songID”的第一个值设置为“第一个”。我试过这样做:如何从数组中检索第一个值?

var first = songID[0] 

但它只使一个新的数组只有每个值的第一个字符...任何建议?

$(window).load(function(){ 
    var pURL = 'http://gdata.youtube.com/feeds/api/playlists/F9183F81E7808428?v=2&alt=json&callback=?'; 
    $.getJSON(pURL, function(data) { 
     $.each(data.feed.entry, function(i, item) { 
     var songID = item.media$group.media$content[0].url.substring(25, [36]); 
     var songTitle = item.title.$t; 
     var descript = item.media$group.media$description.$t; 
     var songAth = descript.slice(3); 
     } 
    } 
}) 
+0

你可以上传json文本吗? – 2011-12-24 20:37:38

回答

1

您已经在each()循环,所以你不应该试图访问它作为一个数组,但只是作为一种价值。刚刚尝试:

if(i == 0){ 
    var first = songID; 
} 
+0

啊完美!像魅力一样工作,谢谢! – user1114852 2011-12-24 20:47:12

+0

对你有好处!请接受为答案:) – 2011-12-24 20:48:03

0
$(document).ready(function() { 
var pURL = 'http://gdata.youtube.com/feeds/api/playlists/9002A5F66694EBA0?v=2&alt=json&callback=?'; 
    $.getJSON(pURL, function(data) { 
     $.each(data.feed.entry, function(i, item) { 
     var songID = item.media$group.media$content[0].url.substring(25, [36]); 
     var songTitle = item.title.$t; 
     var descript = item.media$group.media$description.$t; 
     var songAth = descript.slice(3); 
     if(i==0){ 
      alert("firstId is "+songID); 
     } 
     });   
    }); 
}); 

或只为第一ID:

var pURL = 'http://gdata.youtube.com/feeds/api/playlists/9002A5F66694EBA0?v=2&alt=json&callback=?'; 
    $.getJSON(pURL, function(data) { 
     console.log(data.feed.entry[0].media$group.media$content[0].url.substring(25, [36])); 
     });   
    }); 
0

你知道什么你得到实际上是一个数组?什么让你有那个想法?因为如果你要求aString [0],你仍然会得到第一个字符,因为你可以像访问数组元素一样访问字符串。如果它确实是一个数组,只需使用var myString = myArray.join(“”);它会变成一个字符串。