オブジェクトのすべてのキーと値を取得し、それらを配列に格納するために、この小さな関数を記述しました。 {[1,2,3,4] 0}に[0,1,2,3,4]整数JSオブジェクト(キーと値)を単一の深さの配列に平坦化する最良の方法
にすべての要素を変換Iの目的は...値として
オブジェクトの配列が含まれているかもしれません
function flattenObject(obj) {
// Returns array with all keys and values of an object
var array = [];
$.each(obj, function (key, value) {
array.push(key);
if ($.isArray(value)) {
$.each(value, function (index, element) {
array.push(element);
});
}
else {
array.push(value);
}
});
return array
}
ありがとう:そうするために高速/きれいな方法があるかどうかを疑問に思います!
いくつかのデータと希望出力を追加してください。 –
JSでは、これを(ネスティングの任意のレベルに対して)行うための「良い」方法は実際にはありません。明白な解決策は再帰的なことです。スタックを吹き飛ばす可能性があります。あなたが唯一の深いレベルであると確信していれば、コードは問題ありません。 –
https://codereview.stackexchange.com/にコードの改善を求めるのが適しています。あなたのコードはどうですか? 「最良の方法」を求める質問は、さまざまな正解があるため、SOにはあまり適していません。 –