如何对通过在 javascript 中连接两个不同数组创建的数组进行排序
How to sort an array which is created by joining two different arrays in javascript
我正在创建一个结果数组,它是通过连接来自两个不同请求的数组而形成的。结果有“地点”和“地址”。我将“地点”和“地址”分开并显示它们,但我想先显示地点然后再显示地址。任何人都可以帮忙。下面是我的代码 -
let results_html = [];
results_places = ['<li style="margin: 12px"><i style="display:block;float:left" class="material-icons">place</i><span style="font-size:1.25em;font-size: 20px">Places</span></li>']
results_addresses = ['<li style="margin: 12px"><i style="display:block;float:left;font-size: 20px" class="material-icons">home</i><span style="font-size:1.25em">Addresses</span></li>']
if (predictions && predictions.length) {
// debugger;
if (predictions[0].types.join().indexOf("postal_code")!=-1 || predictions[0].types.join().indexOf("locality")!=-1) {
results_html.push(results_places);
} else if(predictions[0].types.join().indexOf("health")!=-1|| predictions[0].types.join().indexOf("hospital")!=-1 || predictions[0].types.join().indexOf("route")!=-1 || predictions[0].types.join().indexOf("premise")!=-1 || predictions[0].types.join().indexOf("street_address")!=-1) {
results_html.push(results_addresses);
}
predictions.forEach(function (prediction) {
results_html.push(`<li class="autocomplete-item" data-type="place" data-place-id=${prediction.place_id}>
<span class="autocomplete-text">${prediction.description}</span></li>`);
});
}
if (predictions2) {
if (predictions2[0].types.join().indexOf("postal_code")!=-1 || predictions2[0].types.join().indexOf("locality")!=-1) {
results_html.push(results_places);
} else if(predictions2[0].types.join().indexOf("health")!=-1|| predictions2[0].types.join().indexOf("hospital")!=-1 || predictions2[0].types.join().indexOf("route")!=-1 || predictions2[0].types.join().indexOf("premise")!=-1 || predictions2[0].types.join().indexOf("street_address")!=-1) {
results_html.push(results_addresses);
}
predictions2.forEach(function (prediction) {
results_html.push(`<li class="autocomplete-item" data-type="place" data-place-id=${prediction.place_id}>
<span class="autocomplete-text">${prediction.description}</span></li>`);
});
}
autocomplete_results.innerHTML = results_html.join("");
这是当前输出 -
我已经查看了您的代码,只需将此行编辑为
let displaySuggestions = function (predictions2, predictions)
这里是jsfiddle
我正在创建一个结果数组,它是通过连接来自两个不同请求的数组而形成的。结果有“地点”和“地址”。我将“地点”和“地址”分开并显示它们,但我想先显示地点然后再显示地址。任何人都可以帮忙。下面是我的代码 -
let results_html = [];
results_places = ['<li style="margin: 12px"><i style="display:block;float:left" class="material-icons">place</i><span style="font-size:1.25em;font-size: 20px">Places</span></li>']
results_addresses = ['<li style="margin: 12px"><i style="display:block;float:left;font-size: 20px" class="material-icons">home</i><span style="font-size:1.25em">Addresses</span></li>']
if (predictions && predictions.length) {
// debugger;
if (predictions[0].types.join().indexOf("postal_code")!=-1 || predictions[0].types.join().indexOf("locality")!=-1) {
results_html.push(results_places);
} else if(predictions[0].types.join().indexOf("health")!=-1|| predictions[0].types.join().indexOf("hospital")!=-1 || predictions[0].types.join().indexOf("route")!=-1 || predictions[0].types.join().indexOf("premise")!=-1 || predictions[0].types.join().indexOf("street_address")!=-1) {
results_html.push(results_addresses);
}
predictions.forEach(function (prediction) {
results_html.push(`<li class="autocomplete-item" data-type="place" data-place-id=${prediction.place_id}>
<span class="autocomplete-text">${prediction.description}</span></li>`);
});
}
if (predictions2) {
if (predictions2[0].types.join().indexOf("postal_code")!=-1 || predictions2[0].types.join().indexOf("locality")!=-1) {
results_html.push(results_places);
} else if(predictions2[0].types.join().indexOf("health")!=-1|| predictions2[0].types.join().indexOf("hospital")!=-1 || predictions2[0].types.join().indexOf("route")!=-1 || predictions2[0].types.join().indexOf("premise")!=-1 || predictions2[0].types.join().indexOf("street_address")!=-1) {
results_html.push(results_addresses);
}
predictions2.forEach(function (prediction) {
results_html.push(`<li class="autocomplete-item" data-type="place" data-place-id=${prediction.place_id}>
<span class="autocomplete-text">${prediction.description}</span></li>`);
});
}
autocomplete_results.innerHTML = results_html.join("");
这是当前输出 -
我已经查看了您的代码,只需将此行编辑为
let displaySuggestions = function (predictions2, predictions)
这里是jsfiddle