В чем разница между
$("h1")
и
$("h1").get()
Первый возвращает какой-то объект, а второй - массив (с теми же элементами), но что именно он делает?
В документация упоминается только «Получить элементы DOM, соответствующие объекту Cheerio. Если указан индекс, получить один из элементов, соответствующих объекту Cheerio», но для меня это все еще не очень понятно ...





$("h1") приводит к объекту Cheerio, для которого можно использовать методы Cheerio (например, .get(), .text(), .prop() и т. д.). Использование .get() в объекте Cheerio возвращает массив основные элементы (не объект Cheerio), в котором могут использоваться только методы, поддерживаемые этим элементом - например, вместо .text() вы должны использовать .textContent, вместо .prop() вы должны использовать обычную точку. обозначение (например, вместо $('h1').prop('foo', 'bar'), $('h1').get()[0].foo = 'bar'). Это то же самое, что и .get() в jQuery.
Объекты Cheerio не являются элементами DOM - .get() извлекает массив последних из первых.
Очень полезный вопрос по теме: stackoverflow.com/questions/4709660/jquery-eq-vs-get