MST

星途 面试题库

面试题:JavaScript 中如何并发使用数组方法处理数据

假设有一个数组 `[1, 2, 3, 4, 5]`,你需要使用 JavaScript 的数组方法并发地对每个元素进行平方操作,然后返回所有平方值的总和。请编写代码实现此功能,并且解释你使用的数组方法及并发原理。
30.2万 热度难度
编程语言JavaScript

知识考点

AI 面试

面试题答案

一键面试
const arr = [1, 2, 3, 4, 5];
const sumOfSquares = arr.reduce((acc, num) => acc + num * num, 0);
console.log(sumOfSquares);
  1. 使用的数组方法reduce 方法。reduce 方法对数组中的每个元素执行一个由您提供的 reducer 函数(升序执行),将其结果汇总为单个返回值。在这里,reducer 函数将数组中的每个元素平方后累加到 acc(累加器)中,初始值为 0
  2. 并发原理:在 JavaScript 中,这并不是真正意义上的并发操作。JavaScript 是单线程语言,reduce 方法是顺序遍历数组元素的,一个元素处理完再处理下一个,并非同时处理多个元素。要实现真正的并发对数组元素进行操作,可以借助 Web Workers 等技术,但本题中使用 reduce 方法按顺序处理元素并累加平方值已能满足需求。