Как создать пустой результат jQuery

Изменить. Как и в jQuery 1.4, использование $() будет работать, как описано ниже.


Мне нужно пройти через массив и создать несколько элементов, которые я хочу иметь в одном объекте результата jQuery.

for (var i = 0; i < 10; ++i) {
    $myJQueryObj = $myJQueryObj.add($("<span>blahblah</span>"));
}

Проблема с этим, однако, заключается в том, что для начала вам нужен объект jQuery, и вы, очевидно, хотите его пустым. В приведенном выше примере, как мне инициализировать $myJQueryObj?

Следующие примеры не работают, поскольку все они выбирают объект документа:

$('')
$()
$(null)
$(false)

Они работают... но...

$('#nonExistantElement')  // yuck
$().slice(0,0)            // surely there a nicer way?

Есть ли лучший способ?

Ответ 1

Угу. Попробуйте $([]). Причина $() не работает, потому что этот jQuery ожидает контекста и без каких-либо параметров по умолчанию будет document в качестве контекста. Многие вещи зависят от того, что это предположение верно, поэтому изменение $() означает "дать мне пустой набор" было бы проблематично в лучшем случае.

Ответ 2

А, я понял это сразу после того, как я написал вопрос. Вот что я нашел, если кому-то еще интересно:

$([])