Yes, Array sort() method always keep the first encountered value before the second encountered value.
you can run this snippet on all browsers
https://jsbin.com/pesuwed/edit?js,console
var items = [
{ name: 'Edward', value: 21 },
{ name: 'Sharpe', value: 37 },
{ name: 'And', value: 45 },
{ name: 'The', value: -12 },
{ name: 'Magnetic', value: 13 },
{ name: 'Zeros', value: 37 },
{ name: 'Sharp', value: 37 },
];
var items1 = [
['Edward', 21],
['Sharpe', 37],
['And', 45],
['The', -12],
['Magnetic', 13],
['Zeros', 37],
['Sharp', 37],
];
// sort by value
var sortedArray = items.sort(function (a, b) {
return a.value - b.value;
});
var sortedArray1 = items1.sort(function (a, b) {
return a[1] - b[1];
});
console.log(sortedArray);
console.log(sortedArray1);