このようなJavaScriptクラスがあるとしましょう
var DepartmentFactory = function(data) {
this.id = data.Id;
this.name = data.DepartmentName;
this.active = data.Active;
}
次に、そのクラスの多数のインスタンスを作成し、それらを配列に格納するとします
var objArray = [];
objArray.push(DepartmentFactory({Id: 1, DepartmentName: 'Marketing', Active: true}));
objArray.push(DepartmentFactory({Id: 2, DepartmentName: 'Sales', Active: true}));
objArray.push(DepartmentFactory({Id: 3, DepartmentName: 'Development', Active: true}));
objArray.push(DepartmentFactory({Id: 4, DepartmentName: 'Accounting', Active: true}));
したがって、で作成されDepartmentFactoryたオブジェクトの配列ができます。array.sort()メソッドを使用して、このオブジェクトの配列DepartmentNameを各オブジェクトのプロパティで並べ替えるにはどうすればよいですか?
このarray.sort()メソッドは、文字列の配列をソートするときにうまく機能します
var myarray=["Bob", "Bully", "Amy"];
myarray.sort(); //Array now becomes ["Amy", "Bob", "Bully"]
しかし、オブジェクトのリストを使用するにはどうすればよいですか?
.sort()の最初の引数としてソート関数を渡すことができます。
—
Paul Tomblin、
DepartmentFactoryコンストラクタとして使用しているので、を使用してオブジェクトを作成しますnew DepartmentFactory。それ以外の場合、配列は一連のundefined値で埋められます。