JavaScript:对象上的迭代(无法返回答案)
我希望遍历整个对象以遍历给定对象中的所有值 我已经尝试过了,并且非常成功,但是因为我正在使用一个函数,所以我需要返回答案,但是我不能这样做。下面是我试过的代码JavaScript:对象上的迭代(无法返回答案),javascript,object,Javascript,Object,我希望遍历整个对象以遍历给定对象中的所有值 我已经尝试过了,并且非常成功,但是因为我正在使用一个函数,所以我需要返回答案,但是我不能这样做。下面是我试过的代码 var d={ 姓名:“西蒙”, 年龄:"20岁",, 服装:{ 风格:“简单”, 时髦人士:错 } } 功能深度(目标){ 如果(目标的类型=='object'){ for(常量输入目标){ 深度(目标[关键]); } } 否则{ 控制台日志(目标); } } 深部(d)声明一个数组,推送该数组中的项。最后用\n加入数组并返回: v
var d={
姓名:“西蒙”,
年龄:"20岁",,
服装:{
风格:“简单”,
时髦人士:错
}
}
功能深度(目标){
如果(目标的类型=='object'){
for(常量输入目标){
深度(目标[关键]);
}
}
否则{
控制台日志(目标);
}
}
深部(d)代码>声明一个数组,推送该数组中的项。最后用\n
加入数组并返回:
var d={
姓名:“西蒙”,
年龄:"20岁",,
服装:{
风格:“简单”,
时髦人士:错
}
}
var-res=[];
功能深度(目标){
如果(目标的类型=='object'){
for(常量输入目标){
深度(目标[关键]);
}
}
否则{
res.push(目标);
}
返回res.join('\n');
}
控制台日志(深(d))代码>您可以通过小心返回的内容以及如何合并递归结果来实现这一点。您不应该需要外部阵列:
var d={
姓名:“西蒙”,
年龄:"20岁",,
服装:{
风格:“简单”,
时髦人士:错
}
}
功能深度(目标){
返回目标的类型!='object'|| target===null
?[目标]
:[].concat(…Object.values(target.map(deep))
}
console.log(deep(d))
是的,我试过了问题是什么?@Anonymus仔细阅读代码,他正在返回结果。