@olenne

В чём разница между этими вариантами выборки?

Прошу помочь разобраться, в чём разница между:
1) $("#wrap")[0];
2) $("#wrap");
3) $("#wrap").get(0);
?
  • Вопрос задан
  • 311 просмотров
Решения вопроса 1
Deonisius
@Deonisius
Родился в 11110110111 году, 11000 января.
$("#wrap") - вернет объект jQuery. И не "все объекты с айдишником wrap", как говорил Pavel K, а один единственный, даже, если кому-то в голову придёт создать на одной странице несколько элементов с одинаковым ID. $("#wrap")[0] === $("#wrap").get(0) - извлекает из объекта DOM-элемент, как если бы мы обращались к нему с помощью нативного JS. Разница между последними только в форме записи: с использованием метода jQuery .get() или по свойству объекта.
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
PavelK
@PavelK
1. выбираются все объекты с айдишником wrap и берётся первый
2. выбираются все объекты с айдишником wrap
3. выбираются все объекты с айдишником wrap и берётся первый
через get(n) быстрее, нежели чем через []

UPDT: йа затупок
get() и [] возвращает чистый DOM объект (не будут работать методы jQuery), попутал с eq
во втором случае если указан айдишник, то выберется первый объект, если указан класс, то выберутся все объекты.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы