Javascript/Jquery 中each() 和forEach()的区别

从名字看上去这两个方法好像有点关系,但在javascript中它们区别还是挺大的。

forEach() 用于数组的操作,对数组中的每个元素执行制定的函数(不是数组不能使用forEach()方法)。 而$.each() 是JQuery中的方法,用于对集合中的每个匹配元素执行制定的函数。此外,它们所对应的回调函数中的参数也不一样:Array.forEach(item,index,array1);$(selector).each(function(index,element)).

下面是$.each()例子:

      var lst = $(".distance");
      $(lst).each(fun);
      function fun(index,item) {
          alert($(this).text());
      }
      var arr = [1, 2];
      $(arr).each(fun);
      function fun(index,item) {
          alert(item);
      }
 

下面是一个forEach() 的例子:

      var arr = [1, 2];
      arr.forEach(fun);
      function fun(num) {
          alert(num);
      }

所以使用forEach的地方,可以使用$.each 来代替。同时对于集合中元素的操作,还可以是用最基本的for 循环。

原文地址:https://www.cnblogs.com/bg57/p/4168354.html