jQuery, and in extension Cheerio, uses something called "context", and it does have a special meaning.
The context is where jQuery will search for the given selector, so in plain JS the equivalent would be
document is the context, and
#fruit is the selector.
The default context in Cheerio is always
document, unless another context is specifically given in the format
The selector only has context if it's two strings, separated by a comma, so something like this would still use
document as context
and it would search for both elements, not one inside the other etc. because it's just one string, containing a comma, so it's not the same thing.
The first one of your examples is the only one with a special context, the other two has
document as context, and are regular CSS selectors.
^ This has context, and would be the exact same as
^ This does not have a special context, it just selects all
.pear elements inside an UL
^ This does not have a special context either, it selects all LI elements with a
class attribute that perfectly matches
orange, i.e. has no other classes