2016-04-11 9 views
1

私はクライアント側のアプリケーション開発を初めて行っています。私は、1つの要件を持って、それが可能かどうかである彼らは、一つのオブジェクトのプロパティ、残りのオブジェクトの順序を変更どのようにオブジェクトのプロパティをJavaスクリプトで指定されたオブジェクトのように同じ順序で保持するには?

var obj1={ 
    'name':'Sachin', 
    'age':40, 
    'add':'Mumbai' 
} 

var obj2={ 
    'age':22, 
    'name':'Virat', 
    'add':'NewDelhi' 
} 

var obj3={ 
    'add':'WI' 
    'age':39, 
    'name':'Lara' 
} 

以下のように、私は私の要件、 あるknow.Below私は3 Javaスクリプトオブジェクトを持っていませんプロパティも同じ順序でなければなりません。たとえば、オブジェクトを1つの順序に変更し、残りの2つのオブジェクトのプロパティをオブジェクト1のように同じ順序で変更します。次に出力は以下のようになります。

var obj1={ 
    'name':'Sachin', 
    'age':40, 
    'add':'Mumbai' 
} 

var obj2={ 
    'name':'Virat', 
    'age':22, 
    'add':'NewDelhi' 
} 

var obj3={ 
    'name':'Lara', 
    'age':39, 
    'add':'WI' 
} 

ソートを実行する際にこれを使用しています。ループを使用している場合は、時間がかかります。そのため、JSや角などの任意の解決策を強調することができます。

私は先に進んでください。事前に

おかげで、 スリニヴァサRao.ch

+2

オブジェクトのプロパティをソートすることはできず、現在の順序を常に同じにすることもできません。この動作が必要な場合は、配列が必要です。オブジェクトのプロパティに必ず名前でアクセスするので、問題は表示されないので、順序は関係ありません。 –

+0

Javascriptオブジェクトは配列ではないため、順序付けされていません。彼らはソートを開始する順序がないので、ソートすることはできません。これは、それらを使ってソートすることとは異なります。 – Dellirium

答えて

1

私たちは直接、オブジェクトを並べ替えることはできませんし、我々はこれを達成する手順に従ってくださいアンダースコアのいずれかの直接法を持っていません。

Example Here

var obj1 = { 
    'name': 'Sachin', 
    'age': 40, 
    'add': 'Mumbai' 
} 

var obj2 = { 
    'age': 22, 
    'name': 'Virat', 
    'add': 'NewDelhi' 
} 


var newObj2 = objSort(obj1, obj2); //arg1 is referal arg2 is need to chang object 

function objSort(obj1, obj2) { 
    var obj = {}; 
    _.each(obj1, function(val, key) { 
    obj[key] = obj2[key]; 
    }); 
    return obj; 
} 

console.log(newObj2); 

出力は、私はこれがあなたのために使うことを願っています

{ 
    name: "Virat", 
    age: 22, 
    add: "NewDelhi" 
} 

です。

+0

ありがとう@vamsi、それは私には便利です – user1632949

関連する問題