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) //[]
**函數內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]
**即便函數返回空 結果數組的長度和原數組是一致的
- 不會改變原數組
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]
- map() 參數必須是函數
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)
-
函數接收三個參數
- item (必須) 當前遍歷項
- i (非必須)當前遍歷項下標
- arr (非必須) 原數組
完整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]
您的點贊是我的動力 謝謝!