ES5数组实例方法【forEach】

真的了解forEach?

forEach

  • forEach((value, index, arr) => {})
  • 作用:遍历数组,增强版/简化版的for循环
  • 返回:无返回值
  • 语法:
    array.forEach((value, index, arr) => {
    value: 数组中的每项元素
    index:数组中元素的下标值
    array:数组本身
    })
  • 查看数组的实例方法: Array.prototype
  • 不会改变原数组!不会改变原数组!不会改变原数组!

遍历简单数组

const beauty = ['小红', '小黄', '小蓝', '小绿']

beauty.forEach((value, index, arr) => {
    console.log('元素:' + value, '下标:' + index, '本身:' + arr)
    // 元素:小红 下标:0 本身:小红,小黄,小蓝,小绿
    // 元素:小黄 下标:1 本身:小红,小黄,小蓝,小绿
    // 元素:小蓝 下标:2 本身:小红,小黄,小蓝,小绿
    // 元素:小绿 下标:3 本身:小红,小黄,小蓝,小绿
})

遍历对象

const boys = [
    {
        name: '杜兰特',
        height: 200
    },
    {
        name: '库里',
        height: 192
    },
    {
        name: '巴特勒',
        height: 205
    },
    {
        name: '科比',
        height: 233
    }
]
boys.forEach((value, index) => {
    console.log('元素:' + value.name, '下标:' + index)
})
// 元素:杜兰特 下标:0
// 元素:库里 下标:1
// 元素:巴特勒 下标:2
// 元素:科比 下标:3

手写个forEach

Array.prototype._forEach = function (callback) {
    for (let i = 0; i < this.length; i++) {
        callback(this[i], i, this)
    }
}

const boys = [
    {
        name: '杜兰特',
        height: 200
    },
    {
        name: '库里',
        height: 192
    },
    {
        name: '巴特勒',
        height: 205
    },
    {
        name: '科比',
        height: 233
    }
]

boys._forEach((value, index) => {
    // this就是调用_forEach的数组对象,拿到之后,内部for循环实现
    console.log('元素:' + value.name, '下标:' + index)
})

// 元素:杜兰特 下标:0
// 元素:库里 下标:1
// 元素:巴特勒 下标:2
// 元素:科比 下标:3

水平有限,还不能写到尽善尽美,希望大家多多交流,跟春野一同进步!!!

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值