关于javascript:JavaScript中forEachmapsomeeveryfilter的区别

forEach:没有返回值
map:有返回值,把原数组通过解决后返回新数组

var arr = [1, 2, 3, 4, 5]
var newArr = arr.map(function(item) {
  return item * 2
})
console.log(newArr); 
[2, 4, 6, 8, 10]

filter:有返回值,返回符合条件的新数组

var arr = [1, 2, 3, 4, 5]
var newArr = arr.filter(function (item) {
  return item > 3
})
console.log(newArr);
[4,5]

some:有返回值,数组中只有查找到第一个值满足条件就会返回true,且终止循环

var arr = [1, 2, 3, 4, 5]
var newArr = arr.some(function (item) {
  return item > 4
})
console.log(newArr);
true

every:有返回值,数组中的每一个值必须全副满足条件才会返回true,
查找到第一个值不满足条件就会返回false,且终止循环

var arr = [2, 3, 4, 5]
var newArr = arr.every(function (item) {
  return item > 1
})
console.log(newArr);
true

评论

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

这个站点使用 Akismet 来减少垃圾评论。了解你的评论数据如何被处理