2014-02-14 2 views
-3

Javascript в 10 раз быстрее, чем jquery. Но если я буду размещать javascript внутри jquery-кода, это будет более быстрым способом, иначе jQuery будет быстрее?Какая более высокая производительность в javascript и jquery?

Для например:

$(selector).filter(function(){ 
    return this.className == 'myclass'; 
}); 

$(selector).filter(function(){ 
    return $(this).attr('class') == 'myclass'; 
}); 

Я думаю, что в первом способе Javascript преобразуется в JQuery, а затем JQuery в яваскрипт и во втором методе JQuery преобразуется в JavaScript, так второй работает быстрее. Я прав?

+1

использовать http://jsperf.com/ - кстати, второй должен быть 'return $ (this) .attr ('class') == 'myclass';' –

+0

Один, что есть вторые примеры дополнительный вызов функции делает первую технически быстрее. –

+0

, но решение jquery - '$ (selector) .filter ('. Myclass')' –

ответ

0

Первого один быстрее IMO, как вы используете родной яваскрипт this.className, вы можете проверить его на jsperf.com

Я сделал тест, чтобы проверить разницу в производительности вы можете найти результаты here

Javascript vs jQuery

Благодаря @RevanProdigalKnight, который добавил еще один тест производительности here.

+0

Спасибо @RevanProdigalKnight, так мило с вашей стороны. – Adil

0

JavaScript быстрее, чем jQuery, но вы должны написать код оптимизированным образом.

+0

«всегда» все почти всегда неправильно. Если вы пишете crappy x-browser, и jQuery имеет оптимизированный вызов, это может быть быстрее. сомневайтесь во всем, пока вы не скажете о реальном использовании. Например, я видел много скриптов перетаскивания, которые спрашивают «я в IE»? onmousemove ... – dandavis

1

JQuery - это Javascript. Библиотека javascript для уменьшения неопределенного кодирования, коллекция широко используемых функций javascript, которая доказала, что помогает в эффективном и быстром кодировании.

Javascript является источником, на самом деле сценарии, на которые реагирует браузер.

+1

Вы забыли ссылку на источник, который вы указали. – BoltClock

0

Вы ошибаетесь, все его javascript, включая части jQuery.

вещь, в значительной степени все, что вызывает LIB JQuery, является (относительно) медленно

и ваш первый код быстрее, это вызывает только JQuery один раз, и сравнивает свойства строки с «MyClass»

ваш второй код, дважды вызывает jQuery и вызывает функцию jquery .atter и сравнивает возвращаемое значение этой функции с 'myclass'

скучно? сделайте некоторые тесты! : D

Смежные вопросы