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();
}