Функция сортировки в javascript, необходимо изменить правило ортировки?
за такой кодстайл хочется покалечить)
StationsSort.sort(function(s1,s2) {
 // some code
})
Это не функция. Функцией является сам метод sort(), которому можно передать функцию как параметр, которая будет указывать как сортировать элементы. А StationsSort является объектом который нужно отсортировать. И вызывается метод sort() в данном блоке кода, а не где то еще.
Для примера:let arr = [5, 4, 7, 2, 1, 8, 6, 0];

arr.sort((a, b) => {
	if (a < b) {
  	return -1;
  } else if (a > b) {
  	return 1;
  } else {
  	return 0;
  }
}); // [0, 1, 2, 4, 5, 6, 7, 8]
PS. Для начала приведите код в нормальный вид, согласно какому нибудь code style. Сейчас же в вашем коде черт ногу сломит.
Сделайте хотя бы так:$.get(URL + '/stations.json', function(data) {
  var j1 = 0;

  $.each(data, function(j1) {
    Stations[this.sindex] = this;
    StationsSort[j1] = this;
    
    j1++;
  });

  var date = new Date();
  dstmp = date.getTime();

  $.each(StationsSort, function() {
    lastMsg = Math.floor(dstmp / 1000) - this.last_at;
    style = '';

    if (lastMsg < 10800) {
      style = "style=\"background: #8affbb;\"";
    }

    StationsSort.sort(function(s1, s2) {
      if (s1.sindex > s2.sindex)
        return 1;
      if (s1.sindex < s2.sindex)
        return -1;
      else
        return 0;
    });

    $('#station-list').append("<div " + style + " class='st-btn' title='" + EncodeHTML(this.station_name) + "' onclick=\"StationProcess(this, '" + EncodeHTML(this.sindex) + "')\">" + EncodeHTML(this.sindex) + ' - ' + EncodeHTML(this.station_name) + "</div>");
  });
});