a ambas preguntas, la respuesta es sí
  Cita:  var arr =  ["Delta", "alpha", "CHARLIE", "bravo", "delta"]; 
 
var arr2= new Array();
 
min = arr.toString().toLowerCase().split(',');
 
for( var i = 0; i < min.length; i++) {
arr2[i] = min[i];
}
 
 
 
arr2.sort();
 
 
Array.prototype.EliminarRepetidos = function () {
var arr_limpio = [];
var val_eliminados = [];
var cantidad = {};
	for(var i = 0; i < this.length; i++){
		if(!(this[i] in cantidad)) {
			cantidad[this[i]] = 0;
			arr_limpio.push(this[i]); 
			cantidad[this[i]]++; 
		} else {
			val_eliminados.push(this[i]);
			cantidad[this[i]]++; 
		}
	}
 
var repeticiones = "";
	for (j=0; j < arr_limpio.length; j++) {
		repeticiones +="El elemento " + arr_limpio[j] + " se repite ------ " + parseInt(cantidad[arr_limpio[j]]-1) +" veces\n"
	}
	alert("Arreglo Original: " + min.toString() + "\nArreglo Limpio: " + arr_limpio.toString() + "\nValores Eliminados: " + val_eliminados.toString() + "\nCantidad de veces que se repite cada elemento\n=======================\n" + repeticiones)
}
 
 
arr2.EliminarRepetidos();