Метод 1 и метод 2 идентичны, с той лишь разницей, что метод 1 должен проанализировать переданную область и преобразовать ее в вызов $parent.find(".child").show();
.
Метод 4 и Метод 5 оба должны проанализировать селектор и затем просто вызвать: $('#parent').children().filter('.child')
и $('#parent').filter('.child')
соответственно.
Итак, метод 3 всегда будет самым быстрым, потому что ему нужно выполнить наименьшее количество работы и использовать самый прямой метод для получения детей первого уровня.
На основании скорректированных тестов скорости Анурага здесь: http://jsfiddle.net/QLV9y/1/
Тест скорости: (чем больше, тем лучше)
Вкл. Хром , метод 3 лучше, чем метод 1/2, а затем 4/5
Вкл. Firefox , метод 3 по-прежнему лучше, чем метод 1/2, а затем 4/5
Вкл. Опера , метод 3 по-прежнему лучше, чем метод 4/5, а затем 1/2
В IE 8 , хотя в целом медленнее, чем в других браузерах, он все равно следует методу 3, порядку 1,2,4,5.
В целом, метод 3 - это самый лучший метод для использования, так как он вызывается напрямую, и ему не нужно проходить более одного уровня дочерних элементов в отличие от метода 1/2, и он не нужно разобрать как метод 4/5
Однако имейте в виду, что в некоторых из них мы сравниваем яблоки с апельсинами, так как метод 5 рассматривает всех детей, а не детей первого уровня.