24
사람들이 jQuery에서 .sort()
함수를 사용하는 많은 예제를 살펴 보았습니다. 그래서 예를 들어jQuery .sort() 문서는 어디에 있습니까?
: I함으로써
$('#myId').sort(..);
가 jQuery를 API의 sort()
에 대한 모든 문서를 찾을 수없는, 누군가가 날 지점 수 있습니까?
사람들이 jQuery에서 .sort()
함수를 사용하는 많은 예제를 살펴 보았습니다. 그래서 예를 들어jQuery .sort() 문서는 어디에 있습니까?
: I함으로써
$('#myId').sort(..);
가 jQuery를 API의 sort()
에 대한 모든 문서를 찾을 수없는, 누군가가 날 지점 수 있습니까?
jQuery (공식적으로)가 아니기 때문에 프록시는 Array.sort입니다.
Derek가 지적했듯이 jQuery(...)
은 배열을 반환하지 않습니다. 오히려 jQuery를 adds a proxy는 jQuery 오브젝트 "배열처럼 행동을"하기 : 함수의 this
함수가 호출되는 객체에 의해 결정되기 때문 프록시 작동
// For internal use only.
// Behaves like an Array's method, not like a jQuery method.
push: push,
sort: [].sort, // <-- here
splice: [].splice
. 또한 Array.sort
(및 Array.splice
)은 "배열 유사"인 this
(length
및 아마도 0..length-1
속성을 가짐)에서 작동합니다. 은 "내부에만"메모 다음
var a = {0: "z", 1: "a", length: 2, sort: [].sort}
a[0] // -> "z"
a.sort() // in-place modification, this === a
a[0] // -> "a"
a instanceof Array // -> false (never was, never will be Array)
YMMV : 여기 Array.sort
를 사용하여 사용자 객체 [AB]의 예이다.
'$ ('# myId')'는 배열을 반환하지 않습니다. –
그렇다면이 프록시 때문에 .toArray()를 수행 할 필요가 없다는 뜻입니까? – foreyez
@foreyez : 아니요.'sort()'는'this'를 리턴하고,'push()'는 길이를,'splice()'는 새로운'Array'를 리턴합니다. – Bergi