Javascript 检查jQuery.each中的最后一次迭代

Javascript 检查jQuery.each中的最后一次迭代,javascript,jquery,ajax,each,Javascript,Jquery,Ajax,Each,如何检查jQuery.each()循环的最后一次迭代?我的循环正在对来自$.ajax请求的对象进行迭代 jQuery.ajax({ url:“”, 键入:“获取”, 数据:{ 跟踪标识:跟踪标识 }, 数据类型:“json”, 成功:功能(数据){ 每个(数据、函数(键、值){ console.log(值); }) } }); 传递给each()处理程序函数的第一个参数是数组中当前元素的索引(尽管您当前已将其命名为key)。您可以将其与阵列的长度进行比较,以找出您当前的位置: $.each(da

如何检查
jQuery.each()循环的最后一次迭代?我的循环正在对来自
$.ajax
请求的对象进行迭代

jQuery.ajax({
url:“”,
键入:“获取”,
数据:{
跟踪标识:跟踪标识
},
数据类型:“json”,
成功:功能(数据){
每个(数据、函数(键、值){
console.log(值);
})
}
});

传递给
each()
处理程序函数的第一个参数是数组中当前元素的索引(尽管您当前已将其命名为
key
)。您可以将其与阵列的长度进行比较,以找出您当前的位置:

$.each(data, function(index, value) {
    var isLastElement = index == data.length -1;

    if (isLastElement) {
        console.log('last item')
    }

    console.log(value);
},

每个都传递到函数键和值中。根据数据的长度检查键(索引)

if (key == data.length- 1) {
              console.log('Last field');
          }

您可以检查数据的长度并将其与键进行比较(请注意,第一个键是0)

jQuery.ajax({
url:“”,
键入:“获取”,
数据:{tracking_id:tracking_id},
数据类型:“json”,
成功:功能(数据){
var arrLength=data.length;
每个(数据、函数(键、值){
if(key==arrLength-1){
/*这是最后一个*/
}
console.log(值);
},
})

每个函数的第一个参数等于索引

因此,您可以将索引与数据的长度进行比较

请看使用div标记的示例:

$(文档).ready(函数(){
变量len=$('div')。长度;
$('div')。每个(函数(索引){
如果(索引==(len-1))
警报(“上次索引”);
});
})

1.
2.

3
虽然其他答案都是正确的,但我个人最喜欢这种方法,只需编写自己的计数器:

var计数器=0;
$(您的选择器)。每个(函数(索引、元素){
计数器++;
如果(计数器==$(您的选择器).length)
{
//最后元素
}
其他的
{
//不是最后一个元素
}

});
但我不是在div中工作,我在数组中成功地使用了对象。我添加了另一个使用JavaScript对象的示例。
 jQuery.ajax({
        url: "<?php echo $this->getUrl('xs4arabia/index/getFetchrOrderLogs/'); ?>",
        type: "GET",
        data: {tracking_id: tracking_id},
        dataType: "json",
        success: function (data) {
        var arrLength = data.length;
        jQuery.each(data, function (key, value) {
              if( key == arrLength - 1 ) {
                  /* this is the last one */
              }
              console.log(value);
        },
 })