JavaScript技术求助:创建接收对象并返回键列表的函数出错
你的代码存在这几个问题:
- 函数未按需求接收参数:你定义的
keyGenerator没有设置参数,而是在函数内部固定创建了obj1和obj2,完全不符合“接收对象作为参数”的要求,这样函数无法处理外部传入的任意对象。 - 错误使用
Object.keys()方法:Object.keys()仅接受单个对象参数,你传入两个参数obj1, obj2时,第二个参数会被直接忽略,最终只会返回obj1的键列表,既无法同时处理两个对象,也不符合函数接收单个对象参数的需求。 - 函数未返回结果:需求要求函数返回对象的键列表,但你的代码只是用
console.log打印结果,没有使用return语句返回值,调用这个函数无法获取到键列表。
修正后的代码示例
// 符合需求的函数:接收一个对象参数,返回其键列表 function keyGenerator(obj) { return Object.keys(obj); } // 测试使用 const obj1 = { color: "black", inkColor: "blue", brand: "Bic" }; const obj2 = { name: "weight", weight: 230, height: 6.2 }; console.log(keyGenerator(obj1)); // 输出 ["color", "inkColor", "brand"] console.log(keyGenerator(obj2)); // 输出 ["name", "weight", "height"]
内容的提问来源于stack exchange,提问作者Dylan Martin
相关产品推荐
相关产品推荐

