如何在 JavaScript 中對陣列排序?用示例說明?
排序
排序就是按照升序或降序顯示元素。Array.sort() 函式用於根據 JavaScript 中的 compare() 函式對陣列排序。
a) 在給定的程式中我們將按照 年齡屬性降序對陣列排序。
示例
<html>
<body>
<script>
var persons = [
{ name: 'rajesh', birthdate: 1845, death: 1875 },
{ name: 'Bharat', birthdate: 1909, death: 1917},
{ name: 'baba', birthdate: 1950, death: 1972 },
{ name: 'Tanish', birthdate: 2039, death: 2067 },
{ name: 'rahim', birthdate: 1989, death: 2049 }
]
var sortedArray = persons.sort(function(a,b) {
var lastPerson = a.death - a.birthdate;
var nextPerson = b.death - b.birthdate;
if (lastPerson > nextPerson) {
return -1;
} else {
return 1;
}
});
console.log(sortedArray);
</script>
</body>
</html>瀏覽器控制檯中的輸出
{name: "rahim", birthdate: 1989, death: 2049}
{name: "rajesh", birthdate: 1845, death: 1875}
{name: "Tanish", birthdate: 2039, death: 2067}
{name: "baba", birthdate: 1950, death: 1972}
{name: "Bharat", birthdate: 1909, death: 1917}b) 這裡,我們按照年齡屬性進行排序,以使陣列升序排列
示例
<html>
<body>
<script>
var persons = [
{ name: 'rajesh', birthdate: 1845, death: 1875 },
{ name: 'Bharat', birthdate: 1909, death: 1917},
{ name: 'baba', birthdate: 1950, death: 1972 },
{ name: 'Tanish', birthdate: 2039, death: 2067 },
{ name: 'rahim', birthdate: 1989, death: 2049 }
]
var sortedArray = persons.sort(function(a,b) {
var lastPerson = a.death - a.birthdate;
var nextPerson = b.death - b.birthdate;
if (lastPerson < nextPerson) {
return -1;
} else
{
return 1;
}
});
console.log(sortedArray);
</script>
</body>
</html>瀏覽器控制檯中的輸出
{name: "Bharat", birthdate: 1909, death: 1917}
{name: "baba", birthdate: 1950, death: 1972}
{name: "Tanish", birthdate: 2039, death: 2067}
{name: "rajesh", birthdate: 1845, death: 1875}
{name: "rahim", birthdate: 1989, death: 2049}
廣告
資料結構
網路
RDBMS
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP