Fijate si te sirve algo así:
Código PHP:
<script>
Array.prototype.map=function(fun){
var r=[];
for(var i=0,l=this.length;i<l;i++){
r[i]=fun(this[i]);
}
return r;
}
Array.prototype.trad=function(vecComp){
var r=[];
for(var i=0,l=this.length;i<l;i++){
for(var ii=0,ll=vecComp.length;ii<ll;ii++){
if(this[i].acentos()==vecComp[ii].split('___')[0]){
r[i]=vecComp[ii].split('___')[1];
}
}
}
return r;
}
String.prototype.acentos=function(){
var s=['á','é','í','ó','ú','Á','É','Í','Ó','Ú'];
var r=['a','e','i','o','u','A','E','I','O','U'];
var a=this;
for(var i=0;i<s.length;i++){
a=a.split(s[i]).join(r[i]);
}
return a;
}
function aux1(el){
var t=el.acentos();
return t.toLowerCase()+'___'+el;
}
function aux2(el){
var t=el.acentos();
return t.toLowerCase();
}
var vec=['Bolivia','bebé','árbol','albahaca','Alabama','zanahora','Úrsula','Teherán','tomate'];
var vec2=vec.map(aux1);
var nVec=vec.map(aux2).sort();
alert(nVec.trad(vec2));
</script>