错误示范
let listDatas = []
let num = listDatas.length;
let param = {
num:"",
//父级
majorName: valueRadio,
//子级
subObject: ""
}
//循环添加时,最后输出的值是一样,需要这样处理
suboList.forEach((item,i) => {
param.num=i+num
param.subObject = item
listDatas[num+i] = param;
//这里listDatas[num+i]值指向的是param的引用地址
})
**这样添加对象最后输出的值是一模一样的**
正确方法
let listDatas = [];
let num = listDatas.length;
//循环添加时,最后输出的值是一样,需要这样处理
suboList.forEach((item,i) => {
let param = {
num: num+i,
//父级
majorName: valueRadio,
//子级
subObject: item
}
listDatas[num+i] = param;
})
//使用了es6的块级作用域