MST

星途 面试题库

面试题:JavaScript 数组方法优化:筛选与转换

给定一个包含数字的数组,例如 [1, 2, 3, 4, 5],要求使用 JavaScript 数组方法进行优化代码实现以下功能:筛选出所有偶数,并将其平方后组成新数组。请写出优化后的代码,并解释为何这样写是优化的。
31.5万 热度难度
编程语言JavaScript

知识考点

AI 面试

面试题答案

一键面试
const originalArray = [1, 2, 3, 4, 5];
const newArray = originalArray.filter(num => num % 2 === 0).map(num => num * num);
console.log(newArray);

优化解释

  1. filter 方法:使用 filter 方法可以简洁地筛选出数组中的偶数。filter 方法会遍历数组中的每一个元素,将满足回调函数条件(即 num % 2 === 0,判断为偶数)的元素收集到一个新数组中。
  2. map 方法:在 filter 筛选出偶数数组后,紧接着使用 map 方法。map 方法会遍历筛选后的数组,对每个元素进行平方操作(num * num),并返回一个新数组,这个新数组就是我们最终需要的所有偶数平方后的数组。 这种链式调用数组方法的方式,相比于传统的 for 循环实现,代码更加简洁、易读,同时也利用了 JavaScript 数组方法的内置优化机制,提升了代码的执行效率。