挑战要求我们根据给定对象的键创建一个数组(不使用Objects.keys
)。
这是我的代码:
function getAllKeys(object){
var array = [];
for(var key in object){
array.push(key);
return array;
}
}
var myObj={
name:"bellamy",
age:25 };
getAllKeys(myObj);
由于某种原因,它只返回第一个 key
[ 'name' ]
任何帮助将不胜感激!我确信这是一个简单的修复,只是我作为一个极端新手不知道的一个修复。
最佳答案
您需要将return
移到循环之外:
function getAllKeys(object){
var array = [];
for(var key in object){
array.push(key);
}
return array;
}
var myObj = {
name:"bellamy",
age:25
};
getAllKeys(myObj);
这是因为您的函数在第一次遇到 return
时将立即返回,在您的示例中,它位于循环的第一次迭代中。
关于javascript - 数组的对象键,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43021641/