Answers:
$($("li").get().reverse()).each(function() { /* ... */ });
              .get()将jQuery包装的数组转换为普通JS数组的方法。JS数组具有.reverse()。
                    Array.reverse()都将在适当位置修改数组并返回反向数组。因此,此解决方案实际上依赖于$()。get()返回一个新数组,而不是对某些内部jQuery或DOM数组的引用。在此示例的范围内,可能是安全的选择。注意事项编码器。
                    我以世界上最小的jquery插件的形式向您介绍有史以来最干净的方法:
jQuery.fn.reverse = [].reverse;
用法:
$('jquery-selectors-go-here').reverse().each(function () {
    //business as usual goes here
});
-所有归功于Michael Geary在他的帖子中:http://www.mail-archive.com/discuss@jquery.com/msg04261.html
this对象时具有数字属性和length属性,因此javascript可以对其进行索引并将数组函数应用于jQuery实例?
                    <li>Item 5</li>有0的指数
                    Array.prototype.reversejQuery.prototype.reverse.lengthreverse.length[0][1]
                    reverse方法,这不是浪费吗?Array.prototype.reverse例如,仅复制对函数的引用会更快jQuery.fn.reverse = Array.prototype.reverse;吗?不是那么简短和“聪明”,而是更有效率?诚然,在当今闪电般的浏览器中这可能并不明显,但仍然...
                    你可以做
jQuery.fn.reverse = function() {
    return this.pushStack(this.get().reverse(), arguments);
}; 
其次是
$(selector).reverse().each(...) 
              这里有不同的选择:
第一:没有jQuery:
var lis = document.querySelectorAll('ul > li');
var contents = [].map.call(lis, function (li) {
    return li.innerHTML;
}).reverse().forEach(function (content, i) {
    lis[i].innerHTML = content;
});
...并使用jQuery:
您可以使用此:
$($("ul > li").get().reverse()).each(function (i) {
    $(this).text( 'Item ' + (++i));
});
在这里演示
另一种将jQuery与反向结合使用的方法是:
$.fn.reverse = [].reverse;
$("ul > li").reverse().each(function (i) {
    $(this).text( 'Item ' + (++i));
});
这个演示在这里。
另一种选择是使用length(与该选择器匹配的元素数),然后使用index每次迭代的来从那里下来。然后,您可以使用以下代码:
var $li = $("ul > li");
$li.each(function (i) {
    $(this).text( 'Item ' + ($li.length - i));
});
这个演示在这里
还有一个,就是那种与上面的一个:
var $li = $("ul > li");
$li.text(function (i) {
    return 'Item ' + ($li.length - i);
});
在这里演示
我更喜欢创建一个反向插件
jQuery.fn.reverse = function(fn) {       
   var i = this.length;
   while(i--) {
       fn.call(this[i], i, this[i])
   }
};
用法,例如:
$('#product-panel > div').reverse(function(i, e) {
    alert(i);
    alert(e);
});
              我发现Array.prototype.reverse对象失败,所以我做了一个新的jQuery函数用作替代:jQuery.eachBack()。照常进行迭代jQuery.each(),并将每个密钥存储到一个数组中。然后,它反转该数组,并按反转键的顺序对原始数组/对象执行回调。
jQuery.eachBack=function (obj, callback) {
    var revKeys=[]; $.each(obj,function(rind,rval){revKeys.push(rind);}); 
    revKeys.reverse();
    $.each(revKeys,function (kind,i){
        if(callback.call(obj[i], i, obj[i]) === false) {    return false;}
    });
    return obj;
}   
jQuery.fn.eachBack=function (callback,args) {
    return jQuery.eachBack(this, callback, args);
}
              
<li>Item 5</li>有0的指数