如何使用 phonegap 按字母顺序排列从 android 设备获取的联系人?

How to order the contact alphabetically that are fetched from android device using phonegap?

这是我从 android 设备获取联系人的代码:

function onDeviceReady() 
{
    var options = new ContactFindOptions();
    options.filter="";  
    options.multiple=true;
    var fields = ["*"];
    navigator.contacts.find(fields, onSuccess, onError, options);
}
function onSuccess(contacts) 
{
    alert('Total Contacts '+contacts.length);
    for (var i = 0; i < contacts.length; i++) 
    {
        if(contacts[i].phoneNumbers.length>0)
        {
            document.getElementById("demo").innerHTML+=contacts[i].displayName+"-"+ contacts[i].phoneNumbers[0].value+"<br/>";
        }
    }
}

我能够获取所有联系人,但我希望它们按字母顺序显示。请帮我。我也试过 options.sort 但它不起作用。

假设返回的联系人变量是一个对象数组,并且您想按显示名称排序 属性。

创建比较函数:

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

然后调用 sort() 传入比较函数,然后迭代数组:

contacts.sort(compare);