簡體   English   中英

jQuery函數對數組元素進行排序

[英]Jquery function to order elements of array

jQuery中是否有一個函數可以對數組元素或json元素或類似元素進行排序?

謝謝。

您正在尋找javascript的.sort()方法。 我知道您已要求使用jQuery解決方案,但我認為這是您想要的。

您可以在任何數組上調用.sort() 如果將其傳遞給函數,它將被視為比較器函數。 這意味着您可以根據需要對任何數組進行排序。

如果要使用比較器函數對數字數組進行排序(升序),則可以這樣做:

arrayVariable.sort(function(a,b) {
    return a-b;
});

不過,它不必只是數字。 您反對任何標准:

arrayVariable.sort(function(a,b) {
    /* assume a and b are both objects with a "key" property */
    return a.key - b-key;
});

這將根據數組中對象的.key對數組進行排序(升序)。

不,但是有一種內置在JavaScript中的方法:

my_array = [67,2,5,1,90,8];
my_array.sort(function(a,b){return a-b;})
// my_array now contains [1,2,5,8,67,90]

https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/Array/sort

Javascript已經具有Array.sort方法。

var arr = ["red", "blue", "green"];
arr.sort(); // default sort is lexicographic.
// arr == ["blue", "green", "red"]

如果需要更復雜的排序,則必須使用函數參數。

var arr = [101, 90, 200];
arr.sort();
// arr == [101, 200, 90] as the elements are treated as strings.
arr.sort(function(a, b){ return a - b;});
// arr == [90, 101, 200];

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM