我有一个看起来像这样的数组:

markerArray[i] = [i, title, cat];


该数组在for循环内,添加了动态内容

所以结果可能是这样的:

markerArray[0] = [0, A title, A];
markerArray[1] = [1, A title new, B];
markerArray[3] = [3, A title, E];
markerArray[4] = [4, A title, A];


所以我的问题是我如何或可能对数组进行排序,以便输出基于A,BC等或标题或类似的从数组内部获取的内容,请注意最后一个(类别)按字母顺序排列现在:

    markerArray[0] = [0, A title, A];
    markerArray[1] = [4, A title, A];
    markerArray[2] = [1, A title new, B];
    markerArray[3] = [3, A title, E];


这有可能吗?

最佳答案

尝试-

var markerArray = new Array();
markerArray[0] = [0, "A title", "A"];
markerArray[1] = [1, "A title new", "B"];
markerArray[3] = [3, "A title", "E"];
markerArray[4] = [4, "A title", "Z"];
markerArray[5] = [5, "A title", "A"];


markerArray.sort(function(a, b) {
   var comp1 = a[2];
   var comp2 = b[2];
   return (comp1 < comp2) ? -1 : (comp1 > comp2) ? 1 : 0;
})

alert(markerArray);

09-15 13:49