jquery反向数组

时间:2012-01-02 15:59:43

标签: jquery arrays

我有以下代码片段,它会返回一些youtube id。 现在我想要反转输出(因为现在它是最后一个)

if (options.slideshow) {
var links = [];
var $lis = holder.parents('#yt_holder').find('li');
var $as = $lis.children('a');
for(var count = $lis.length-1, i = count; i >= 0; i--){
    links.push(youtubeid($as[i].href));
    }
 slideshow = '&playlist=' + links + '';
 alert(slideshow);
}

我试过.reverse()但是有些项目似乎缺失了

links.reverse().push(youtubeid($as[i].href));

任何帮助将不胜感激。 凯撒

3 个答案:

答案 0 :(得分:10)

你应该在积累之后反转列表:

for ( ... ) {
    ...
}
links = links.reverse();

但最好是首先以正确的顺序将元素放入数组中。

答案 1 :(得分:2)

尝试按相反的顺序添加视频,而不是这个

for(var count = $lis.length-1, i = count; i >= 0; i--){
    links.push(youtubeid($as[i].href));
    }

这样做

for(var i = 0, count = $lis.length; i < count; i++){
    links.push(youtubeid($as[i].href));
    }

答案 2 :(得分:0)

嗨,你扭转了链接数组,你必须将它分配给其他数组,因此它将工作。

var slideshow = [];
slideshow = links.reverse();