1// Sort an array of numbers
2let numbers = [5, 13, 1, 44, 32, 15, 500]
3
4// Lowest to highest
5let lowestToHighest = numbers.sort((a, b) => a - b);
6//Output: [1,5,13,15,32,44,500]
7
8//Highest to lowest
9let highestToLowest = numbers.sort((a, b) => b-a);
10//Output: [500,44,32,15,13,5,1]
11
1numArray.sort((a, b) => a - b); // For ascending sort
2numArray.sort((a, b) => b - a); // For descending sort
3
1var items = [
2 { name: 'Edward', value: 21 },
3 { name: 'Sharpe', value: 37 },
4 { name: 'And', value: 45 },
5 { name: 'The', value: -12 },
6 { name: 'Magnetic', value: 13 },
7 { name: 'Zeros', value: 37 }
8];
9
10// sort by value
11items.sort(function (a, b) {
12 return a.value - b.value;
13});
14
15// sort by name
16items.sort(function(a, b) {
17 var nameA = a.name.toUpperCase(); // ignore upper and lowercase
18 var nameB = b.name.toUpperCase(); // ignore upper and lowercase
19 if (nameA < nameB) {
20 return -1;
21 }
22 if (nameA > nameB) {
23 return 1;
24 }
25
26 // names must be equal
27 return 0;
28});
1var test = ['b', 'c', 'd', 'a'];
2var len = test.length;
3var indices = new Array(len);
4for (var i = 0; i < len; ++i) indices[i] = i;
5indices.sort(function (a, b) { return test[a] < test[b] ? -1 : test[a] > test[b] ? 1 : 0; });
6console.log(indices);
1//sort an array of strings
2var fruitSalad = ['cherries', 'apples', 'bananas'];
3fruit.sort(); // ['apples', 'bananas', 'cherries']
4
5//sort an array of numbers
6var scores = [1, 10, 2, 21];
7scores.sort(); // [1, 10, 2, 21]
8// Watch out that 10 comes before 2,
9// because '10' comes before '2' in Unicode code point order.
10
11//sorts an array of words
12var randomThings = ['word', 'Word', '1 Word', '2 Words'];
13randomThings.sort(); // ['1 Word', '2 Words', 'Word', 'word']
14// In Unicode, numbers come before upper case letters,
15// which come before lower case letters.