Sort associative array based on key in descending order

Contents

Output

12 => December
3 => March
1 => January

Code examples


JavaScript

const example_array = {1:"January", 12:"December", 3:"March"};
var keys=[];
for(var key in example_array) {
  keys.push(key);
}
keys.sort((a,b)=>{return b-a;});
for(var key of keys) {
  console.log(key + " => " + example_array[key]);
}

Perl

use strict;
my $example_array = {1 => 'January', 12 => 'December', 3 => 'March' };
foreach my $key (reverse sort {$a <=> $b} keys %{$example_array}) {
   print $key. " => " . $example_array->{$key} ."\n";
}

PHP

<?php
$example_array = [1 => 'January', 12 => 'December', 3 => 'March'];
krsort($example_array);
foreach ($example_array as $key => $value) {
  echo $key . " => " . $value . "\n"; 
}

Python

example_array = {1: "January", 12:"December", 3:"March" }
tuples_sorted_by_key = sorted(example_array.items(), key=lambda x:x[0])[::-1]
for key, value in tuples_sorted_by_key:
  print(str(key) + " => " + value)

Ruby

example_array = {1 => "January", 12 => "December", 3 => "March" }
sorted_array = Hash[ example_array.sort.reverse ]
sorted_array.each { |tuple| print([tuple[0].to_s, tuple[1].to_s].join(" => ")+"\n") }