我有两个包含相同元素但顺序不同的数组,如下所示:
var arr1 = [{name: 'Bob', age: 24}, {name: 'Mary',age: 45}, {random: props}];
var arr2 = [{name: 'Mary', age:45 }, {name: 'Bob',24}, {other: randomProps}];
当然,在这种情况下,一个简单的reverse()可以解决问题,但它可能是一个随机顺序包含10个对象的数组。
由于这两个数组总是包含一些共同的属性(name
),我应该能够重新排列一个数组以与另一个数组匹配name
。
有关如何进行此操作的任何提示?
也许是这样的话?但这假设数组中的每个对象都具有name属性。
var arr1 = [{name: 'Bob', age: 24}, {name: 'Mary',age: 45}, {random: props}];
var arr2 = [{name: 'Mary', age:45 }, {name: 'Bob',24}, {other: randomProps}];
function sortArray(arr) {
arr.sort(function(a, b) {
return a.name > b.name;
});
}
sortArray(arr1);
sortArray(arr2);
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句