jQuery与原生的JavaScript

  原生的JavaScript与jQuery的区别

    1、入口函数不同:

      原生js入口函数:window.onload

      jQuery入口函数:$(document).ready(function)

    2、入口函数加载模式不同:

      原生js等页面dom加载完成并且等图片等资源加载完成之后才会执行;

      jQuery则只等页面dom加载完成就执行了,并不会等图片等资源加载完成再执行;

      所以在这里想通过jQuery的入口函数加载页面之后查询使用资源的属性是不可取的,如:$(document).ready(function(){ $('img').width()});获取不到img的宽度。

    3、函数覆盖问题上的区别:

      原生js在编写多个入口函数时,后面编写的会覆盖前面编写的;

      jQuery则不会覆盖而是按顺序执行;

  原生JavaScript与jQuery的关系:

    包含与被包含的关系,jQuery 是JavaScript的一个类/方法集合。

    因为jQuery是对常用的网页效果做了兼容性的封装,使用这个方法集合在网页中实现效果很方便,但它的本质还是JavaScript。所以同学说的“只写jquery就好了,js代码好麻烦”是矛盾的,jQuery就是JavaScript,其语法就是JavaScript语法。

  原生JavaScript的优势:

    1、运行速度更快

      如:$('#x')比getElementById('x')慢40倍。

    2、有时候更节约内存

      如:只有几K的网页,却要引用几十上百K的jQuery做效果会显得很浪费。

  原生JavaScript的局限性:  

    1.不能添加多个入口函数(window.onload),如果添加了多个,后面的会把前面的给覆盖;
    2.原生JS的API名字都太长太难记;
    3.原生JS有的时候会造成代码冗余;
    4.原生JS中有些方法或属性,有浏览器兼容问题;
    5.原生JS容错率比较低,前面的代码出了问题,后面的代码执行不了等。

  jQuery的优势:
    1.是可以写多个入口函数的;
    2.jQuery的API名字都容易记忆;
    3.jQuery的代码简洁(具有隐式迭代机制);
    4.jQuery帮我们解决了浏览器兼容问题;
    5.容错率较高,前面的代码出了问题,后面的代码不受影响等。

猜你喜欢

转载自www.cnblogs.com/love-yy/p/11853147.html