简体   繁体   English

Javascript 排序

[英]Javascript sort

Not sure what I am doing wrong.不知道我做错了什么。 I am trying to sort the results.我正在尝试对结果进行排序。

function makeSidebar() {
    var html = "";
    for (var i=0; i<gmarkers.length; i++) {
      if (!gmarkers[i].isHidden()) {
        html += '<a href="javascript:myclick(' + i + ')">' + gmarkers[i].myteam + '<\/a><br>';
      }
    }
    document.getElementById("side_bar").innerHTML = html;
}

I have tried html.sort();我试过 html.sort(); and a few different ideas.和一些不同的想法。

Thanks谢谢

html in your code is a string and strings don't have a sort function.您的代码中的html是一个字符串,而字符串没有排序 function。 Arrays however do, so you should sort the teams first, then display them: Arrays 但是这样做,所以你应该先对团队进行排序,然后显示它们:

function compare(a, b) {
    if (a.myteam < b.myteam) return -1;
    if (a.myteam > b.myteam) return 1;
    return 0;
} 

gmarkers.sort(compare);

function makeSidebar() {
        var html = "";
        for (var i=0; i<gmarkers.length; i++) {
          if (!gmarkers[i].isHidden()) {
            html += '<a href="javascript:myclick(' + i + ')">' + gmarkers[i].myteam + '<\/a><br>';
          }
        }
        document.getElementById("side_bar").innerHTML = html;
      }

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM