JSFiddle - React, Tailwind, and code Playground

JavaScript

// start with ['def123', 'abc999', 'zzz000', 'abc123', 'zzz111']
var strings = ['def123', 'abc999', 'zzz000', 'abc123', 'zzz111']
$('body').append(strings.join(' ') + '<br>')

// reverse the digits
// get this ['def876', 'abc000', 'zzz999', 'abc876', 'zzz888']
strings = reverse_digits_only(strings)
$('body').append(strings.join(' ') + '<br>')

// sort it
// get this ['abc000', 'abc876', 'def876', 'zzz888', 'zzz999']
strings = strings.sort()
$('body').append(strings.join(' ') + '<br>')

// reverse the digits again
// get this ['abc999' 'abc123' 'def123' 'zzz111' 'zzz000']
strings = reverse_digits_only(strings)
$('body').append(strings.join(' ') + '<br>')


function reverse_digits_only (strings) {
  return strings.map(function (string) {
    var first_three_letters = string.substring(0, 3)
    var reversed_digits = string.substring(3).split('').map(function (digit) {
      return 9 - digit
    })

    return first_three_letters + reversed_digits.join('')
  })
}