循环的差异性记录

简介: 循环的差异性记录循环的差异性记录

map:


map方法返回一个新的数组,数组中的元素为原始数组调用函数处理后的值

也就是map()进行处理之后返回一个新的数组

⚠️注意:map()方法不会对空数组进行检测

map方法不会改变原始数组


forEach


forEach方法用于调用数组的每个元素,将元素传给回调函数

⚠️注意: forEach对于空数组是不会调用回调函数的 ,

没有返回一个新数组&没有返回值

应用场景:为一些相同的元素,绑定事件处理器!

不可链式调用


reduce


reduce() 方法接收一个函数作为累加器,reduce 为数组中的每一个元素依次执行回调函数,不包括数组中被删除或从未被赋值的元素,接受四个参数:初始值(上一次回调的返回值),当前元素值,当前索引,原数组

语法:arr.reduce(callback,[initialValue])


callback:函数中包含四个参数


  • previousValue (上一次调用回调返回的值,或者是提供的初始值(initialValue))
  • currentValue (数组中当前被处理的元素)
  • index (当前元素在数组中的索引)
  • array (调用的数组)


initialValue (作为第一次调用 callback 的第一个参数。)


const arr = [1, 2, 3, 4, 5]
const sum = arr.reduce((pre, item) => {
    return pre + item
}, 0)
console.log(sum) // 15
复制代码


filter


用于数组的过滤


for...in...和 for...of...


因此另外有for-in循环和for-of循环两种增强型循环。其中,for-in是ES5标准,遍历的是key(可遍历对象、数组或字符串的key);for-of是ES6标准,遍历的是value(可遍历对象、数组或字符串的value)。


for...in 遍历的是对象,for...of遍历的是数组

直接看简单的代码示例了解用法。


// for...in...  是无序列表
const arr = {
  name: '小何',
  age: '19',
  type: '帅',
  content: '前端'
}
for(key in arr) {
  console.log(key)    // name, age, type, content
  console.log(arr[key])  // 小何, 19, 帅, 前端
}
// for...in...   是有序列表
const m = ['第一', '第二', '第三']
for(let item of m) {
  console.log(item)  // 第一, 第二, 第三
}


相关文章
|
开发框架 .NET 编译器
C# 中的记录(record)类型和类(class)类型对比总结
C# 中的记录(record)类型和类(class)类型对比总结
253 0
|
JSON 关系型数据库 MySQL
MySQL全文搜索与JSON支持:高效检索与灵活数据处理
本文深入探讨了MySQL数据库中的全文搜索与JSON支持,通过详细的代码示例,阐述了全文搜索的原理、全文索引的创建,以及JSON数据类型的使用与操作。全文搜索在数据库中的重要性日益凸显,MySQL提供了全文索引来实现高效的文本数据检索,通过MATCH AGAINST语句,可以轻松地进行全文搜索操作。此外,MySQL的JSON支持为半结构化数据的存储和查询提供了灵活的解决方案,您可以存储JSON对象、数组等数据,并使用JSON函数来查询和修改数据。
1436 0
|
JavaScript Java 测试技术
基于ssm+vue.js+uniapp小程序的冀中工程技师校园网站附带文章和源代码部署视频讲解等
基于ssm+vue.js+uniapp小程序的冀中工程技师校园网站附带文章和源代码部署视频讲解等
92 8
|
JavaScript 前端开发 API
Vue 3.0 v-for中的Ref数组
Vue 3.0 v-for中的Ref数组
230 0
|
机器学习/深度学习 数据采集 存储
一文读懂机器学习分类全流程
🏆在本文中,作者将带你了解机器学习分类的全流程,从问题分析>数据预处理>分类器选择>模型构建>精度评价>模型发布为Web应用。从0带读者入门机器学习分类。
894 0
|
人工智能 算法 搜索推荐
面试基础篇——快速排序
面试基础篇——快速排序
219 0
面试基础篇——快速排序
|
JavaScript 前端开发 网络安全
若依框架渗透测试用户名密码明文传输问题
若依框架渗透测试用户名密码明文传输问题
1240 0
若依框架渗透测试用户名密码明文传输问题
|
存储 XML 前端开发
微信扫码登录
所需文档 微信公众平台(公众号和小程序管理平台): 小程序:mp.weixin.qq.com/wxamp/frame… 公众号:mp.weixin.qq.com/cgi-bin/hom… API文档: developers.weixin.qq.com/doc/offiacc… developers.weixin.qq.com/doc/offiacc…
239 0
|
存储 NoSQL MongoDB
MongoDB:4-MongoDB的索引和查询分析(explain)
MongoDB:4-MongoDB的索引和查询分析(explain)
|
存储 算法 安全
iOS逆向 07:Hash算法
iOS逆向 07:Hash算法
378 0
iOS逆向 07:Hash算法