在JavaScript中为对象和嵌套对象赋值
因此,基本上,我有一个对象(在vue data()中):在JavaScript中为对象和嵌套对象赋值,javascript,vue.js,object,assign,Javascript,Vue.js,Object,Assign,因此,基本上,我有一个对象(在vue data()中): 。。。 详情:{ 标题:“我不知道”, 日期:2020-02-12, 发件人:{ 姓名:“John Cenna”, 用户名:“john10” }, 最近:{ 姓名:“Katleen”, 用户名:“katmeow” }, .... } 现在,我想将它们全部赋值为null(对于验证过程,有点),但不能赋值嵌套对象(没有子对象的对象可以只使用循环)。我该怎么做?谢谢递归解决方案: 用于迭代对象的键值项,如下所示。请注意,Object.entr
。。。
详情:{
标题:“我不知道”,
日期:2020-02-12,
发件人:{
姓名:“John Cenna”,
用户名:“john10”
},
最近:{
姓名:“Katleen”,
用户名:“katmeow”
},
....
}
现在,我想将它们全部赋值为null(对于验证过程,有点),但不能赋值嵌套对象(没有子对象的对象可以只使用循环)。我该怎么做?谢谢递归解决方案:
Object.entries()
为非对象返回一个空数组null
或未定义
,则返回null
const数据={
详情:{
标题:“我不知道”,
日期:2020-02-12,
发件人:{
姓名:“John Cenna”,
用户名:“john10”
},
最近:{
姓名:“Katleen”,
用户名:“katmeow”
},
项目:[
{id:100,名称:'Apple'},
{id:200,名称:'Banana'},
{id:300,名称:'Orange'},
]
}
}
函数无效(obj){
// 1
Object.entries(obj.forEach)([k,v])=>{
// 2
if(v==null | | v==undefined){
回来
}
// 3
if(数组isArray(v)){
返回v.forEach(无效)
}
// 4
if(typeof v==='object'){
使无效(obj[k])
}否则{
// 5
obj[k]=null
}
})
}
使无效(data.detail)
console.log('res',data.detail)
您可能需要使用某种形式的循环。