我有一个文件,其中包含我要操作的对象。我想以两个为例。但是在 showArrayOrdenado() 函数中,我应用 sort() 对其进行排序,因为它是关于对象而不是文字。不要命令我 我的想法是它们按组成数组的每个对象的名称参数排序。这是可能的?
function Sandskill(nom, edad, especialidad, comp) {
this.nombre = nom;
this.edad = edad;
if (especialidad == 1 || especialidad == 2 || especialidad == 3) {
if (especialidad == 1)
this.especialidad = "sistemas";
if (especialidad == 2)
this.especialidad = "web";
if (especialidad == 3)
this.especialidad = "multiplataforma";
} else {
this.especialidad = null;
}
this.comp = comp;
//GETTER
this.getNom = function() {
return this.nombre;
}
this.getEdad = function() {
return this.edad;
}
this.getEspecialidad = function() {
return this.especialidad;
}
this.getComp = function() {
return this.comp;
}
}
var s1 = new Sandskill("Pepe", "22", "1");
var s2 = new Sandskill("Juan", "22", "2", s1);
function mostrarArrayOrdenado() {
sandskillArray.sort();
for (i = 0; i < sandskillArray.length; i++) {
alert(sandskillArray[i].getNom() + " * " + sandskillArray[i].getEdad() + " * " + sandskillArray[i].getEspecialidad() + " * ")
}
}
正如您在MDN网站上看到的那样,sort() 方法可以接收比较器函数作为参数,其形式如下:
在你的情况下,它可能是这样的: