var forEach = function (array, callback, thisObject) {
if (array.forEach)
{
array.forEach(callback, thisObject);
}
else
{
for (var i = 0, len = array.length; i < len; i++) { callback.call(thisObject, array[i], i, array); }
}
}
测试
var nums = [0,1,2,3];
forEach(nums, function (o, i, obj) {
alert("第" + i + "个元素是" + o+"这个数组的长度是"+obj.length);
});
解释:判断array中是否存在j成员函数forEach
如果存在就按存在的执行。
如果不存在,那么用个for循环遍历数组中的每一个元素,对每个以元素,执行回调函数。array[i],i,array
是传个回调函数的参数。