js中交换object末端键值
问题描述:
原始数据:
const obj={a:'b',c:{b:'d'}}
得到:
obj={b:'a',c:{d:'b'}}
用递归obj的末端,然后交换末端的键值。
答
let obj = {a:'b',c:{b:'d'}}
console.log(reversed(obj))
function reversed(obj){
let obj2 = {}
for(let key in obj){
if(typeof obj[key] == 'object'){
obj2[key] = reversed(obj[key])
}else{
obj2[obj[key]] = key
}
}
return obj2
}