我应该如何在jQuery中使用.sort()?

时间:2012-06-08 00:45:38

标签: javascript jquery

我一直在研究人们在jQuery中使用.sort()函数的很多例子。

例如:

$('#myId').sort(..);

我在jQuery API中找不到sort()的任何文档,有人能告诉我它的用法吗?

1 个答案:

答案 0 :(得分:22)

因为它不是jQuery(正式)的一部分,但是代理Array.sort

正如Derek指出的那样,jQuery(...)不会返回数组。相反,jQuery adds a proxy使jQuery对象“像一个数组一样”:

// For internal use only.
// Behaves like an Array's method, not like a jQuery method.
push: push,
sort: [].sort,    // <-- here
splice: [].splice

此代理有效,因为函数中的this由调用该函数的对象确定。此外,Array.sort(和Array.splice)适用于任何{“1}}”数组“(具有this和大概属性length)。以下是使用0..length-1的自定义对象[ab]的示例:

Array.sort

YMMV遵循“仅供内部使用”的说明。