javascript - .map、.every 和 .forEach 之间有什么区别?

标签 javascript foreach map-function

我一直想知道它们之间有什么区别。他们似乎都在做同样的事情......

最佳答案

区别在于返回值。

.map() 返回一个新的对象数组,这是通过对原始项目执行某些操作而创建的。

.every() 返回一个 bool 值 - 如果此数组中的每个元素都满足提供的测试函数,则为真。 .every() 的一个重要区别是测试函数可能并不总是为数组中的每个元素调用。一旦测试函数对任何元素返回 false,就不再迭代数组元素。因此,测试函数通常应该没有side effects。 .

.forEach() 不返回任何内容 - 它迭代数组,为数组中的每个项目执行给定的操作。

阅读这些以及许多其他内容 Array iteration methods at MDN .

关于javascript - .map、.every 和 .forEach 之间有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7340893/

相关文章:

list - 为什么 mapcar 只使用从值列表返回的参数之一?

javascript - 如何使用 OK_loadit 函数将 CSS 应用于 iFrame?

javascript - 在表单的 2 个页面/步骤中保留 JavaScript 变量

JQuery - 分割字符串(对于每个)

python - 使用 tf.map_fn 计算张量的逆

python - 使用 map 或 comprehension list python 从全局变量创建字典列表

javascript - D3 Graph - 将图表插入 div

javascript - 按空格分割并选择第二个项目

javascript - forEach 中箭头函数内的三元运算符

c++ - 基于范围的多维数组