forEach()与each()方法的区别

forEach()为JavaScript(ES5)的方法,而each()方法是JQuery的方法。

forEach() 方法用于调用数组的每个元素,并将元素传递给回调函数。

注意: forEach() 对于空数组是不会执行回调函数的。   arr必须是一个真正的数组,当arr为伪数组则会报错

forEach()的回调函数有三个参数,index,value,arr,index为当前元素的索引值,value为当前元素,arr为当前数组。

var arr = ["你好","我好","大家好","才是","真的好"];
arr.forEach(function(value,index,arr) {
    // 输出为array数组的每一个元素
    // 注意 value在前
    console.log(value);
});

each()方法分两种情况,$().each() 和 $.each()。

$.each() 可用于遍历任何的集合(无论是数组或对象),如果是数组,回调函数每次传入数组的索引和对应的值,方法会返回被遍历对象的第一参数。

var arr = ["gag","grt","rthr","afds","nttr","fWGW","afgd","cvd","awx"];
$.each(arr,function(index,value) {
    // 此时,each方法可以用于直接操作数组
    // index在前
    console.log(value);
});

$(select).each() 主要专用于jquery对象的遍历

 for in  不仅可以遍历对象自身的可枚举属性 还可以遍历 对象原型身上的属性

obj.keys()  只能遍历对象自身的可枚举属性。

原文地址:https://www.cnblogs.com/ndh074512/p/14800932.html