2017-02-20 7 views
-1

関数形式で以下のコードを書くにはどうすればよいですか?例えばオブジェクトを関数形式の配列に書き込む

var obj = { 
    name : 'Tim', 
    age : 20, 
    hasPets : false 
}; 
console.log(Object.keys(obj).map(function(item){ 
    return obj[item]; 
})); //=> [ 'Tim', 20, false ] 

- 関数形式のこのタイプ:

function objectToArray(obj) { 
//code here 
}; 

ありがとうございます!

+0

それは 'objToArray'と呼ばれることはないでしょうか? – Barmar

+0

clogコードをarrayToObject関数に入れるだけですか?正確にI/Oとは何ですか? – Digix

+0

あなたの質問は混乱しています。オブジェクトの配列を(タイトルの示唆しているように)行いたいのですか、オブジェクトに配列したいのですか? – rasmeister

答えて

1

これは、上記の関数を少し減らすことができます

function getMappedItems(obj) { 
    var result = Object.keys(obj).map(function(item){ 
    return obj[item]; 
    }); 
return result; 
}; 

を行うが、あなたが学習としてだけ精緻化すべきです。

https://jsfiddle.net/sureshatta/be7q88qv/

+0

少なくとも、機能名を変更するのはどうですか? – rasmeister

1
var objectToArray= function (obj) { 
     return Object.keys(obj).map(function(item){ 
      return obj[item]; 
     }); 
}; 
0

あなたはエレガントな方法のためObject.prototype.objectToArrayを使用する必要があります。

var obj = { 
 
    name : 'Tim', 
 
    age : 20, 
 
    hasPets : false 
 
}; 
 

 
Object.prototype.objectToArray=function(){ 
 
    return Object.keys(obj).map(function(item){ 
 
     return obj[item]; 
 
    }); 
 
}; 
 
console.log(obj.objectToArray())

+0

Dudeさん、 'Object.prototype'は変更しないでください。 – Cerbrus

+0

@Cerbrus、理由を説明してください。 –

+0

@ Alexandru-IonutMihai私はちょうどあなたが私の意見のために私をdownvoteすることを知っていたxD FYI:私はあなたをdownvoteしなかった。 –

関連する問題