提问:怎么把数组里的值转化为另外的样子
let arr = [10,20,23,12]
let newArr = [15,25,28,17]
let arr = [10, 20, 23, 12]
//let newArr = [15, 25, 28, 17]
//目标 : 把数组里的每个值增加5,形成新数组
//场景:一一映射并返回新的数组
//数组.map方法
数组变量名.map((val, index) => {
return 处理此元素并返回到map函数内, 被一个新的数组收集起来
数组里所有的值遍历结束以后, 停止内部循环并把新数组返回
})
//val:遍历数组的每个值
//index: 数组值对应的下标
let resultArr = arr.map((val, index) => {
return val + 5
})
console.log(resultArr)
例题
遍历数组中的每个对象 并且返回新的数组, 要求新数组里每个对象有一个新的属性叫做age(并且不能影响原数组里的对象)
let objArr = [{
name: '哈哈哈哈',
sex: '男'
}, {
name: '哈',
sex: '男'
}, {
name: '56565',
sex: '男'
}, {
name: '洒家',
sex: '男'
}]
const objNewObj = objArr.map(val => {
return {
name: val.name,
sex: val.sex,
age: 18
}
})
console.log(objNewObj)
不可以 val.age = xxxx
对象存在引用关系 会改变原数组的!!!!