javascript - 如何找到 .each() 中的最后一项?

标签 javascript jquery

我正在运行以下命令,但我得到了

(index):58 Uncaught TypeError: jQuery.last is not a function

var myId; 
 jQuery.getJSON("https://en.wikipedia.org/w/api.php?action=query&list=embeddedin&eilimit=500&eititle=Template:Infobox&callback=?", {
    disablelimitreport: true,
    format: "json"
  }, function(data) {
    jQuery.each(data.query.embeddedin, function(i, item) {
    var $this = $(this);
    if($this[0] === jQuery.last()[0]) {
       var myId = item.pageid;
    }
    console.log(myId);
    });
  });

JsFidlle查看控制台

最佳答案

只需获取元素的长度并将索引移回。试试这个。希望会在你身上发挥作用。

var myId; 
jQuery.getJSON("https://en.wikipedia.org/w/api.php?
action=query&list=embeddedin&eilimit=500&eititle=Template:Infobox&callback=?", {
   disablelimitreport: true,
   format: "json"
}, function(data) {
  jQuery.each(data.query.embeddedin, function(index, item) { 
     var length = data.query.embeddedin.length;
     if (index === (length - 1)) {
       var myId = item.pageid;
       console.log('The last pageid is : ' + myId);
     } 
  });
});

关于javascript - 如何找到 .each() 中的最后一项?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45271021/

相关文章:

php - 如果超链接已在新窗口中打开,则不应单击该超链接

javascript - 如何在延迟加载时使图像可见

JavaScript 测试长度

Ajax 中的 Javascript 加载速度非常慢

javascript - 目标img类名

javascript - 如何使用绝对位置定位元素?

javascript - Javascript 数组中的未定义值是否使用任何内存或在 for-in 循环中迭代?

javascript - 在 div 的 javascript 隐藏/显示上切换单选按钮

jquery - 如何让表格并排显示

javascript - 将 jQuery 选择器存储到变量中不起作用?