数组循环的一些方法

前言

搜索整理出来的一些数组方法,原文数组循环篇1数组循环篇2数组循环篇3


1.for循环

最原始的for(int i=0;i<length;i++){}
代码如下(示例):

let arr =  ["a", "b", "c", "d"];
for( const i = 0; i < arr.length-1; i++ ) {
	console.log(i); // 输出abcd

2.forEach

foreach循环不可return,break
代码如下(示例):

let arr =  ["a", "b", "c", "d"];
arr.forEach(item => {
	console.log(item);
});

3.for in

for in可遍历数组、对象
代码如下(示例):

let obj = {a: '1', b: '2', c: '3', d: '4'}
for (let i in obj) {
    console.log(i)    //遍历的实际上是对象的属性名称 a,b,c,d
    console.log(obj[i])  //这个才是属性对应的值1,2,3,4
}

4.for of

一个数据结构只有部署了 Symbol.iterator 属性, 才具有 iterator接口可以使用 for of循环。
for of不可遍历对象,可遍历数组
如果要遍历对象,有两个方法:
1、使用 Object.keys() 获取对象的 key值集合后,再使用 for of
2、使用内置的Object.values()方法获取对象的value值集合再使用for of
代码如下(示例):

// 1、使用 Object.keys() 获取对象的 key值集合后,再使用 for of
  let obj = {a: '1', b: '2', c: '3', d: '4'}
  for (let i of Object.keys(obj)) {
      console.log(i) // a,b,c,d
  }
// 2、使用内置的Object.values()方法获取对象的value值集合再使用for of
  let obj = {a: '1', b: '2', c: '3', d: '4'}
  for (let i of Object.values(obj)) {
      console.log(i) // 1,2,3,4
  }

5.数组内置方法Array.prototype.filter

代码如下(示例):

var a = [1,2,3];
var b = a.filter(function(value,key,arr){
    console.log(value)    // 结果依次为1,2,3
    console.log(key)      // 结尾依次为0,1,2
    console.log(arr)      // 三次结果都为[1,2,3]
})

6.数组内置方法Array.prototype.indexOf

代码如下(示例):

var a = [1,2,3];
var b = a.indexOf(2);
console.log(a);         // 结果为[ 1, 2, 3 ]
console.log(b);         // 结果为1

7…map()

map() 方法返回一个新数组,数组中的元素为原始数组元素调用函数处理后的值。
map() 方法按照原始数组元素顺序依次处理元素。
是否改变原数组:否
是否对空数组进行检测:否
代码如下(示例):

const arr= [4, 9, 16, 25];
const arr1 = arr.map(item => item+2)
console.log(arr)   // [4, 9, 16, 25]
console.log(arr1)  // [6, 11, 18, 27]

7. .find()

find() 方法返回通过测试(函数内判断)的数组的第一个元素的值。

find() 方法为数组中的每个元素都调用一次函数执行:

当数组中的元素在测试条件时返回 true 时, find() 返回符合条件的元素,之后的值不会再调用执行函数。
如果没有符合条件的元素返回 undefined
注意: find() 对于空数组,函数是不会执行的。
注意: find() 并没有改变数组的原始值。
代码如下(示例):

const arr= [4, 9, 16, 25];
const b = arr.find(item => item>10)
const c = arr.find(item => item<1)
console.log(arr)   // [4, 9, 16, 25]
console.log(b)  // 16
console.log(c)  // undefined

总结

数组遍历方法有很多,根据自身需要使用,有.filter()、.map()、.forEach()、.find()、.findIndex()、.some()、.every()、.fill()等很多

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值