Bueno, gracias a los dos por vuestra ayuda, al final lo hice manualmente mediante una función porque no me aclaraba mucho.
Código:
function order_by_mail(){
var orden = new Array();
var ids = new Array();
var names = new Array();
var cont = 1;
for(id in datos){
orden[datos[id]['id']] = datos[id]['mail'].toLowerCase();
ids[datos[id]['mail'].toLowerCase()] = datos[id]['id'];
names[datos[id]['mail'].toLowerCase()] = datos[id]['nombre'];
//mail[datos[id]['id']] = datos[id]['mail'].toLowerCase();
cont++;
}
var ordenado = orden.sort();
var cont = 1;
for(id in datos){
var iddenombre = ordenado[id];
datos[id]['id'] = ids[iddenombre];
datos[id]['mail'] = ordenado[id];
datos[id]['nombre'] = names[iddenombre];
//datos[id]['mail']
cont++;
}
}
Gracias de todas formas, saludos!