javascript map详解

2018-12-26  本文已影响0人  我是一个前端
map()
   let arr = []
        let newArr = arr.map((item, i, arr) => {
            //item:遍历数组的每一项,i:数组当前项的下标,arr原数组
            console.log(`item---${item}, i---${i}, arr---${arr}`)
            return item + i
        })
        console.log(newArr) //[]
image.png

**函数内console没有执行,证明数组为空是并不执行遍历

   let arr = [1, 2, 3]
        let newArr = arr.map((item, i, arr) => {
            //item:遍历数组的每一项,i:数组当前项的下标,arr原数组
            console.log(`item---${item}, i---${i}, arr---${arr}`)
            return item + i
        })
        console.log(newArr) //[undefined, undefined, undefined]
image.png

**即便函数返回空 结果数组的长度和原数组是一致的

 let arr = [1, 2, 3]
        let newArr = arr.map((item, i, arr) => {
            //item:遍历数组的每一项,i:数组当前项的下标,arr原数组
            console.log(`item---${item}, i---${i}, arr---${arr}`)
            return item + i
        })
        console.log(newArr,arr) //[1, 3, 5]
image.png
        let arr = [1, 2, 3]
        let obj = {
            1: 2
        }
        let arr1 = [1, 2]
        let str = 123
        // let newArr = arr.map(obj)
        let newArr1 = arr.map(arr1)
        let newArr2 = arr.map(str)
image.png
完整demo
        let arr = [1, 2, 3]
        let newArr = arr.map((item, i, arr) => {
            //item:遍历数组的每一项,i:数组当前项的下标,arr原数组
            console.log(`item---${item}, i---${i}, arr---${arr}`)
            return item + i
        })
        console.log(newArr) //[1, 3, 5]
image.png

您的点赞是我的动力 谢谢!

上一篇 下一篇

猜你喜欢

热点阅读