JS排序数组

Dev*_*555 0 javascript arrays

我有以下数组:

var events = [
 {id : 1, start : 100, end : 120},
 {id : 2, start : 60, end : 240},
 {id : 3, start : 700, end : 720}
];
Run Code Online (Sandbox Code Playgroud)

如何start在保留以下内容的基础上对索引进行排序id:

var events = [
 {id : 2, start : 60, end : 240},
 {id : 1, start : 100, end : 120},
 {id : 3, start : 700, end : 720}
];
Run Code Online (Sandbox Code Playgroud)

我试过了:

events.sort()
events.sort(function(a,b){return a-b});
Run Code Online (Sandbox Code Playgroud)

但都没有奏效:(

Ult*_*nct 5

array.sort(..)函数将数组的两个元素(正在进行比较)传递给您指定的比较器函数.因为,在那种情况下,ab对象一样{id : 3, start : 700, end : 720},它们不能真正地比较a-b.

请改用:

events.sort(function(a,b){return a.start - b.start;});
Run Code Online (Sandbox Code Playgroud)