数组的对象键

时间:2017-03-25 20:32:04

标签: javascript arrays object

挑战要求我们从给定对象的键创建一个数组(不使用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);

出于某种原因,它只返回第一个键

[ 'name' ]

任何帮助将不胜感激!我确定它只是一个简单的解决方案,我不知道这是一个极端的新手。

1 个答案:

答案 0 :(得分:1)

您需要将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时立即返回,在你的例子中,它是在循环的第一次迭代中。