ví dụ,Giá trị trả về của jQuery là Array, nhưng hàm tạo là Object. làm sao?
$(document) // [ #document ] : document object in array
typeof $(document) // "object"
$(document).constructor // function Object() { [native code] } or function (a,b) { return some function; }
Nếu giá trị là mảng, nó phải là mảng xây dựng.
Nó không phải là một mảng như đối tượng. bởi vì mảng như đối tượng chỉ có thuộc tính mảng, không giống như [].
Làm cách nào?
thêm: Nếu bạn có thể, hãy hiển thị mã ví dụ đơn giản, vui lòng. như
a = ...
console.log(a) // [ ... ]
console.log(a.constructor) // function Object or something
Tôi không hiểu lý do tại sao sự trở lại từ '$ (tài liệu)' là "không phải là mảng giống như đối tượng" - nếu bạn nhìn vào nguồn jQuery thực tế bạn sẽ thấy nó _is_ một mảng giống đối tượng và _not_ một mảng ... – nnnnnn
@nnnnnn vì đối tượng giống mảng không được hiển thị dưới dạng [] – Ephemera
"Được hiển thị" ở đâu? Sự trở lại từ '$ (document)' là một thể hiện của 'jQuery.fn.init' đã có các thuộc tính' 0' và 'length' được thêm vào. Nếu nó là một 'mảng 'nó sẽ có các phương thức mảng như' .join() 'và nó không có. _Nhìn vào mã nguồn._ – nnnnnn