我需要遍历json对象并找到大小与给定值匹配的键对象、键数组。
我不明白在哪里设置条件。
function traverse(obj, size) {
for (let key in obj) {
if (typeof obj[key] === "object" && obj[key] != null) {
traverse(obj[key]);
if (Object.keys(obj[key]).length > size) {
console.log(key);
} else if (Array.isArray(obj[key])) {
if (obj[key].length > size) {
console.log(key);
}
}
}
}
}
我尝试重新排列 if 条件,但没有给出任何好的结果
您仅使用一个参数调用 traverse。
if (typeof obj[key] === "object" && obj[key] != null) {
traverse(obj[key]); // here !
//... rest of the code
}
应该是
traverse(obj[key], size);
请提供具有所需结果的对象示例以验证逻辑