原生JS 代码和用 jQuery 实现效果各有什么优劣势
发布网友
发布时间:2022-04-26 19:50
我来回答
共3个回答
热心网友
时间:2022-04-07 08:30
各种封装,包括jQuery, dojo等等,主要目的就是为了省心,拿jQuery来说:
jQuery对不同浏览器的事件,DOM对象,都进行了封装,各种操作都可以直接兼容各种浏览器, 要知道, 不同浏览器的区别不仅仅是在CSS里写"-webkit-"还是"filter"的区别, 连事件模型这种底层的东西都不一样
jQuery特有的CSS-LIKE选择器, 链式写法, 封装的各类animate函数, 封装了的异步加载, 都大幅提高了开发效率, 减少重复劳动
jQuery用delay和一系列的函数封装了AJAX操作, 这个功能目测还在不断改进和完善. 反正是比JS省心就是了.
其他就是有些常用函数JQ有所以不用自己写了,你比如浏览器检测...
插件不断丰富, 资料丰富 等等
当然,这样也导致了
jQuery比原生JS慢上 10倍(chrome)~100倍(ie). 具体数忘了, 反正是这个数量级的...尤其是有些人喜欢滥用选择器和不用链式写法
所以说, 如果只用一句JS就可以解决的问题, 就不要用JQ了啊亲...亲测$('#x')比getElementById('x')慢40倍
jQuery也不见得适用所有情况就是了, 网站规模更大就会凸显jQuery的不足. 比如没有命名空间- -. 很多网站是根据自己的情况建立自己的函数库.
题外话, 如果项目相比"一个网页"更偏向"一个APP"的情况, jQuery不见得是最合适的
热心网友
时间:2022-04-07 09:48
各种封装,包括jq, 开发速度快 兼容性好, 但是执行速度慢
JS 原生代码效率高 灵活. 但是开发速度慢
热心网友
时间:2022-04-07 11:23
javascript和jquery这两者之间几乎没有可比性。
虽然jquery基于javascript,但是实际上jquery是和javascript完全不同的两种语言,jquery实际上是一种逻辑式语言和纯粹的函数式语言的结合体。由于这两个特性,因此jquery对DOM的操作极度简化。使用jquery往往可用一两行代码实现javascript原生代码几十甚至上百行代码才能实现的功能。
但是jquery是一个特化的框架,它不是一个完整的解决方案,仍然离不开javascript。
如果想要一个基本上不依赖于原生javascript,可以尝试Sencha。