Jquery或Javascript:在这种情况下哪个更快更适合

Jquery或Javascript:在这种情况下哪个更快更适合,javascript,jquery,Javascript,Jquery,我有这个按钮 <input type="image" src="img/btn2.png" onClick="clearbtn()"> 我的问题是,上面的任务和下面的任务哪个更快更适合这个任务?这两种方法都有效,但我好奇的是,哪一种方法对上述任务的性能最佳 function clearbtn() { $('#address').val("Input Address Here"); $('#res').val("Results will be d

我有这个按钮

<input type="image" src="img/btn2.png" onClick="clearbtn()">
我的问题是,上面的任务和下面的任务哪个更快更适合这个任务?这两种方法都有效,但我好奇的是,哪一种方法对上述任务的性能最佳

   function clearbtn() {
        $('#address').val("Input Address Here");
        $('#res').val("Results will be displayed here");
        $('#valid').val("");
        $('#valid2').val("");
        $('#cor').val("Input Address Here");
        $('#code').val("Input Address Here");
        document.getElementById("placeholderImg").style.display = 'none';
        $('#street_number').val("Input Address Here");
    }

Javascript显然比jQuery快得多。因为每次在元素上使用jQuery时,您都在调用$function,这需要一些时间(不可察觉)

在简单的情况下,Javascript更合适,但在复杂的情况下,jQuery更有用,因为它支持许多功能,最重要的是解决跨浏览器问题

从以下来源查找更多信息:

  • 如果您想提高jQuery性能,请查看以下来源:


  • 不仅在这种情况下,在每种情况下,优化的javascript都比优化的jquery工作得更快。原因是jquery是javascript的包装器。间接地说,jquery将只执行javascript

    普通JavaScript将永远更快,但在现代浏览器中,使用普通计算机,您不会注意到。我想最大的好处是不需要加载jQuery本身来运行jQuery版本,但一旦加载,这两个脚本的执行将非常相似。。这是一个直接的JavaScript。 $(“#address”)实际上调用document.getElementById

    但可以说$(“#address”)更具可读性

    val()只是值的jQuery包装


    这里的性能差异真的很小…

    根据您的需要,Vanilla javascript的速度更快。但是,在某些情况下,您可能需要使用jQuery来实现浏览器兼容性,而且不会让人头疼。当您确实需要速度时,请尝试使用普通js。有关更多详细信息,请参阅。

    Jquery比javascript更适合

     function clearbtn() {
            $('#address').val("Input Address Here");
            $('#res').val("Results will be displayed here");
            $('#valid').val("");
            $('#valid2').val("");
            $('#cor').val("Input Address Here");
            $('#code').val("Input Address Here");
            document.getElementById("placeholderImg").style.display = 'none';
            $('#street_number').val("Input Address Here");
        }
    
    您可以像下面这样进行更多优化

    function clearbtn() {
            $('#res').val("Results will be displayed here");
            $('#cor, #address, #code, #street_number').val("Input Address Here");   
            $('#valid, #valid2').val("");
            $('#placeholderImg').hide();
            }
    

    它们似乎都做了非常不同的事情,因为底部的
    clearbtn()
    不在
    map
    标记上做任何工作。你似乎在比较苹果和橙子,尤其是担心过早的优化。这就是说,你会发现
    文档.getElementById().value
    $(#)val()
    @Matt稍快一点。我没有完成底部的一个,但如果它完成了,它会做与上面完全相同的事情,但是谢谢你的注意,我感谢你的回答
    function clearbtn() {
            $('#res').val("Results will be displayed here");
            $('#cor, #address, #code, #street_number').val("Input Address Here");   
            $('#valid, #valid2').val("");
            $('#placeholderImg').hide();
            }