why do first() return a array?

why do first() return a array?

for checkbox like:
  1. <input type="checkbox" id="selectAll"/>
when I use $("selectAll") or $("selectAll :first") or $("selectAll").first(), result is 
  1. [<input type="checkbox" id="selectAll"/>]
 but for $("selectAll") [0], result is 
  1. <input type="checkbox" id="selectAll"/>
so  what is the correct usage of ":first" and "first()"?