JavaScript数组遍历方法详解:map、forEach与filter

版权申诉
0 下载量 159 浏览量 更新于2024-09-10 收藏 74KB PDF 举报
JavaScript 遍历数组的三种方法 map、forEach 与 filter 实例详解 JavaScript 中遍历数组的方法有很多种,今天我们将讨论其中的三种:map、forEach 与 filter。这三种方法都是 JavaScript 自带的,且都可以用来遍历数组,并对数组进行处理。 **1. Js 自带的 map() 方法** map() 方法返回一个由原数组中的每个元素调用一个指定方法后的返回值组成的新数组。它的回调函数中有三个参数:当前正在遍历的元素、当前元素索引和原数组本身。 使用 map() 方法需要注意以下几点: * 支持 return 返回值 * return 是啥,相当于把数组中的这一项变为啥(并不影响原来的数组,只是相当于把原数组克隆一份,把克隆的这一份数组中的对应项改变了) * map 只能对元素进行加工处理,产生一个新的数组对象。而不能用它来进行筛选(筛选用 filter) 下面是一个使用 map() 方法的例子: ``` var map = Array.prototype.map; var a = map.call("HelloWorld", function(e) { return e.charCodeAt(0); }); // a 的值为 [72, 101, 108, 108, 111, 32, 87, 111, 114, 108, 100] ``` **2. Js 自带的 forEach() 方法** forEach() 方法也是 JavaScript 中遍历数组的方法之一。它与 map() 方法不同的是,forEach() 方法不返回新数组,而是直接对原数组进行处理。 使用 forEach() 方法需要注意以下几点: * 不支持 return 返回值 * 只能对元素进行处理,不能产生新的数组对象 * 可以用来进行筛选,但需要手动实现 下面是一个使用 forEach() 方法的例子: ``` var arr = [1, 2, 3, 4, 5]; arr.forEach(function(e) { console.log(e); }); ``` **3. Js 自带的 filter() 方法** filter() 方法也是 JavaScript 中遍历数组的方法之一。它可以用来对数组进行筛选,返回一个新的数组。 使用 filter() 方法需要注意以下几点: * 支持 return 返回值 * 只能对元素进行筛选,不能对元素进行加工处理 * 可以用来进行筛选,返回一个新的数组对象 下面是一个使用 filter() 方法的例子: ``` var arr = [1, 2, 3, 4, 5]; var newArr = arr.filter(function(e) { return e > 3; }); console.log(newArr); // [4, 5] ``` map() 方法、forEach() 方法和 filter() 方法都是 JavaScript 中遍历数组的方法,但它们的使用场景和注意点不同。map() 方法可以用来对元素进行加工处理,forEach() 方法可以用来对元素进行处理,filter() 方法可以用来对元素进行筛选。